我们在构建过程中使用 Java,因为它用于通过 Ivy 解析/发布我们的依赖项。
没问题,我们已经使用它 2 年了,直到我们尝试将 Java 6 Update 26 升级到版本 7 Update 7,而在本地开发人员 PC (WinXP) 上构建现在需要 2 小时才能完成,而不是 10 分钟!!
PC 上没有其他任何变化,这使它成为我们关注的绝对目标。
有没有人知道为什么 Java 版本 7 会产生这样的速度差异?
更新:构建过程是基于 NAnt 的,因此 Java.exe 从 NAnt 脚本调用,在命令 (DOS) 窗口中运行。
最佳答案
我正在使用 JDK 7u7,我注意到通过调整一些 VM Options 可以获得更好的性能.
您可以尝试 G1GC 和 AgressiveOpts 来帮助缩短编译时间。
按照我在编辑器中使用的设置:
-Xss8m
-Xmn256m
-Xms512m
-Xmx1024m
-XX:PermSize=256m
-XX:MaxPermSize=512m
-XX:+UseG1GC
-XX:+OptimizeStringConcat
-XX:+UseStringCache
-XX:+AggressiveOpts
您可以在 VM Options 中找到每个选项的说明。链接。
希望对你有帮助。
https://stackoverflow.com/questions/12605377/
相关文章:
build - GulpJS : How to rev images and then update
build - 为什么 Gradle 不在编译/运行时类路径中包含传递依赖项?
git - 您是否应该将已编译的 Assets checkin Git?
javascript - 减少 React/MERN Stack Bundle 的大小 - 主要是删
java - 在 Play 上使用 Clover 执行代码覆盖!使用 Ant 的框架应用程序
xcode - 如何将构建阶段复制到 Xcode 中的另一个目标?
build - 在另一个项目中调用 gradle "build"任务