Jmix 编译需要的时间长。

Jmix 编译好慢啊,不论改没改内容,都需要4分钟左右,有时更长。

1.gradle.properties文件下,这些加上也是一样的慢。

org.gradle.parallel=true

org.gradle.daemon=true

org.gradle.configuration-cache=true

org.gradle.caching=true

org.gradle.configureondemand=true

2.build.gradle文件也配置了。
tasks.withType(JavaCompile) {
options.fork = false
options.incremental = true
}

Gradle 切换到离线模式看看速度有没有改善。
如果没有,查看构建日志,看看具体哪一步慢。

1.Gradle 已经离线

2.缓存也已调
-Xms2048m
-Xmx4096m
-XX:ReservedCodeCacheSize=2048m

在下面两个位置等时间明显加长。

2024-01-28T23:46:47.059+08:00 INFO 15512 — [ main] io.jmix.core.impl.MetadataLoader : Metadata initialized in 402 ms
2024-01-28T23:46:48.007+08:00 INFO 15512 — [ main] c.v.f.s.VaadinServletContextInitializer : Search for VaadinAppShell took 98 ms
在此等1分钟

2024-01-28T23:47:45.081+08:00 INFO 15512 — [onPool-worker-2] c.v.f.s.frontend.TaskCopyFrontendFiles : Visited 21 resources. Took 694 ms.
2024-01-28T23:47:45.547+08:00 INFO 15512 — [onPool-worker-2] c.v.f.s.frontend.TaskRunDevBundleBuild : Creating a new development mode bundle. This can take a while but will only run when the project setup is changed, addons are added or frontend files are modified
在此等2分钟


其他正常

谢谢!

到这个环节已经和Gradle没有关系了,这块要编译前端资源,开发环境第一次运行会比较耗时,后续不会很慢。
优化前端编译速度,考虑两个方面:

另外注意,如果使用的是 jmix 2.1.2,每次启动时都要重新编译前端资源,这是一个BUG,参考这里: Vaadin dev-bundle “updated” every start after upgrade to jmix 2.1.2 - Support - Jmix