
这是 t/1092480 的续集。
这个项目大概从今年年中开始从头构建,完全抛弃了之前的 Python 版本,改用 Solon Kotlin Vue 进行了标准的前后端分离重构。
相较于旧版本,新版本的主要改进如下:
额外分享一些技术细节:
solon 是一款完全对标 SpringBoot 的国产 web 开发框架。native-image 技术允许你将 Java 服务编译到特定平台的二进制代码,从而在无 JRE 环境的情况下启动,并带来远超 jvm 的预热速度。本文主要基于 XiaomiAlbumSync 项目,简述在二进制编译下使用 Solon 遇到的一系列问题和对应的解决方案。技术栈包含:Solon, Kotlin, Jimmer, Flyway, SaToken, Gradle, Maven.
flyway 天生与 native-image 不对付,在 solon 下也是如此。gradle 的大手近些年越伸越远,但在国内,还是 maven 的天下。本文主要是上一篇《轻装上阵-暂别 JVM:小记 Solon 和它的朋友们在 native-image 下的爱恨情仇》的续集,继续解决 flyway 如何在 naitve-image 环境下与 solon 打配合。以及尝试让 gradle 的大手再往 solon 伸一些。