Ubuntu下提升Java编译与构建性能的可落地方案
一 基础准备与环境配置
readlink -f $(which java)echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> ~/.bashrcsource ~/.bashrefupdate-alternatives 管理默认 java/javac,确保构建使用的是预期的 JDK。二 构建工具与并行化
-T 1C(按CPU核心数),必要时配合 -DskipTests 做纯编译基准;使用 maven-compiler-plugin 的 fork=true 与合理 source/target 版本减少不必要的跨版本编译开销。--parallel --daemon,在 gradle.properties 中设置 org.gradle.parallel=true、org.gradle.daemon=true、org.gradle.caching=true 提升多模块构建与缓存命中。三 JVM层面的编译期优化
javac -J-Xms1g -J-Xmx2g YourApp.java(通过 -J 将参数传递给编译器JVM)。-J-XX:+TieredCompilation -J-XX:+UseG1GC(G1在较大堆下通常具备更好的吞吐与可预测停顿)。-Xms 与 -Xmx 接近),避免运行期频繁扩缩堆;在资源充足的机器上适度提高上限可显著减少编译停顿。四 系统与内核参数调优
ulimit -n 65535;永久:在 /etc/security/limits.conf 增加 * soft nofile 65535、* hard nofile 65535。/etc/sysctl.conf:vm.swappiness=10。/etc/sysctl.conf:fs.file-max=100000、net.core.somaxconn=65535。sysctl -p 使内核参数生效。五 监控与持续验证
time 或构建工具内置的耗时报告对比优化前后差异。