在 Ubuntu 上 Java 编译慢,通常可以从工具链、依赖管理、磁盘/文件系统、资源限制、构建配置几个方向来排查和优化。下面按「最常见 → 进阶」给你一套实用方案。
不要每次都 clean
# 慢
mvn clean compile
# 快
mvn compile
Gradle 同理:
gradle build # 不要加 clean
Maven
mvn -T 4 compile
# 或自动识别 CPU 核心数
mvn -T 1C compile
Gradle
gradle build --parallel
或在 gradle.properties:
org.gradle.parallel=true
org.gradle.workers.max=4
Gradle(强烈推荐)
org.gradle.caching=true
Maven
mvn -o compile # offline 模式
Java 编译速度随版本提升明显:
查看当前版本:
java -version
建议使用:
编译慢有时是 GC 频繁。
Maven:
export MAVEN_OPTS="-Xmx2g -XX:+UseG1GC"
Gradle:
org.gradle.jvmargs=-Xmx4g -XX:+UseG1GC
❌ 慢:
✅ 快:
如果你用 WSL:
# 项目放在 Linux 文件系统
~/project
# 不要放 /mnt/c
Ubuntu 常见:
systemctl stop apt-daily.timer
IDE(如 IDEA):
~/.m2/settings.xml
<mirror>
<id>aliyun</id>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
Gradle:
systemProp.http.proxyHost=...
mvn dependency:go-offline
开启:
Settings → Build → Compiler → Parallel compilation
| 方案 | 效果 |
|---|---|
| Gradle Build Cache | ⭐⭐⭐⭐ |
| Remote Build Cache | ⭐⭐⭐⭐⭐ |
| Bazel / Buck | ⭐⭐⭐⭐⭐ |
| 模块化(JPMS) | ⭐⭐⭐ |
如果你愿意,可以告诉我:
我可以直接给你针对性配置。