Ubuntu提升Java编译性能
一 基础准备与版本选择
sudo apt update && sudo apt install openjdk-11-jdk。update-alternatives 管理多版本,确保 java -version 与 javac -version 一致,避免混用运行时与编译器版本。export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64; export PATH=$JAVA_HOME/bin:$PATH。二 编译器与构建工具配置
javac 设置合理的默认选项(写入 ~/.bashrc 或项目脚本的别名/包装脚本):
-source 11 -target 11(按项目实际版本调整)。-encoding UTF-8,避免平台默认编码差异导致重复解析与错误。alias javac='javac -source 11 -target 11 -encoding UTF-8'。-T 1C(按 CPU 核心数),合理设置 -Dmaven.compile.fork=true 与内存(见下一节)。--parallel --daemon,在 gradle.properties 中配置编译与堆参数。三 JVM与系统层面的并行与内存调优
javac 运行在足够的内存与并行线程下;在 Gradle/Maven 中启用并行与守护进程。make -j$(nproc) 或构建工具的并行选项,匹配 CPU 物理核心数。export JAVA_OPTS="-Xms1g -Xmx2g -XX:+UseG1GC"(数值依据机器内存与项目规模调整)。-XX:+UseParallelGC;低延迟倾向可选 G1。ulimit -n 65536(或写入 /etc/security/limits.conf)。noatime 减少元数据写入(对编译阶段收益有限,但对整体系统有益)。四 监控与持续验证
time 或构建工具内置统计测量总耗时与增量耗时。htop、iostat)确认 CPU、I/O 是否成为瓶颈。五 进阶方案