IntelliJ IDEA中加速Maven編譯的終極指南
一、為什么我的 Maven 編譯這么慢
很多開發(fā)者會遇到這種情況:
每次點擊 “Maven → compile” 或 “install”,IDEA 都卡半天,甚至 6~7 分鐘才編譯完。
這其實不是你的電腦慢,而是:
- Maven 默認是單線程串行編譯;
- IDEA 默認會每次全量構建;
- 還有些人沒關掉 快照更新 / 插件下載。
解決方法非常簡單,只要幾步配置,就能讓速度提升 3~10 倍
二、基礎優(yōu)化:讓 Maven 編譯“只干正事”
1. 使用國內鏡像源(加速依賴下載)
編輯你的 Maven 配置文件(通常在):
C:\Users\<你的用戶名>\.m2\settings.xml
加入:
<mirrors>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共倉庫</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
這樣下載依賴會比默認快 10 倍。
2. 跳過測試,加速構建
如果只是想編譯代碼(不跑單元測試):
mvn clean compile -DskipTests
或者在 IDEA 界面中勾選:
File → Settings → Build Tools → Maven → Runner → ? Skip Tests
3. 關閉 “Always update snapshots”
打開右側 Maven 工具窗口 → 點擊 ?? → 取消勾選:
Always Update Snapshots
這一步能讓 Maven 不再每次聯網檢查快照依賴。
三、高級提速:并行編譯與 JVM 優(yōu)化
1. 啟用多線程并行編譯
默認的 Maven 是“一個模塊編譯完再下一個”,太慢!
可以用 -T 1C 啟用并行編譯:
mvn clean compile -T 1C -DskipTests
含義:
-T 1C = 每核 1 個線程,例如 8 核 CPU → 并行 8 線程。
-DskipTests = 跳過測試。
如果機器性能強,也可試:
mvn clean compile -T 2C -DskipTests
(但內存占用會更高)
2. 在 IntelliJ IDEA 中永久設置
打開:
File → Settings → Build, Execution, Deployment → Build Tools → Maven → Runner
填入如下:
| 選項 | 配置內容 |
|---|---|
| VM Options | -Dfile.encoding=UTF-8 |
| JRE | Use Project JDK |
| Skip Tests | 勾選 |
| Properties | 空即可 |
然后點擊右側 Maven 工具欄 → 右鍵 compile → “Modify Run Configuration”
在“Command line”框中輸入:
-T 1C -DskipTests
保存即可。
四、讓 IDEA 只編譯改動的部分(增量編譯)
進入 IDEA 設置:
File → Settings → Build, Execution, Deployment → Compiler
勾選:
- Build project automatically
- Compile independent modules in parallel
然后按兩下 Shift → 搜索 “Registry…”
打開 Registry,啟用:
compiler.automake.allow.when.app.running
這樣 IDEA 會在后臺自動編譯你改過的文件,而不是每次都全量編譯。
五、(可選)使用 Maven Daemon(進一步提速)
如果你經常要運行 Maven 命令,可以使用官方的 Maven Daemon(mvnd):
安裝
choco install mvndaemon # Windows brew install mvndaemon # macOS
使用
mvnd clean compile -DskipTests
它會常駐 JVM,大幅減少啟動和加載依賴的時間。
六、制作一個一鍵編譯腳本
Windows 用戶
在項目根目錄創(chuàng)建一個文件 fast-compile.bat:
@echo off echo ?? 正在并行編譯項目... mvn clean compile -T 1C -DskipTests -Dfile.encoding=UTF-8 pause
雙擊即可一鍵并行編譯。
macOS / Linux 用戶
創(chuàng)建文件 fast-compile.sh:
#!/bin/bash echo "?? 正在并行編譯項目..." mvn clean compile -T 1C -DskipTests -Dfile.encoding=UTF-8
然后給權限:
chmod +x fast-compile.sh
運行:
./fast-compile.sh
七、常用命令速查表
| 場景 | 命令 |
|---|---|
| 編譯項目(快) | mvn compile -T 1C -DskipTests |
| 清理后再編譯 | mvn clean compile -T 1C -DskipTests |
| 打包(生成 jar/war) | mvn clean package -T 1C -DskipTests |
| 安裝到本地倉庫 | mvn clean install -T 1C -DskipTests |
| 并行構建速度測試 | mvn clean install -T 2C -DskipTests |
八、實測結果(8核 CPU)
| 優(yōu)化項 | 編譯耗時 |
|---|---|
| 默認(未優(yōu)化) | 6 分 58 秒 |
| 啟用并行 + 跳過測試 | 2 分 13 秒 |
| 啟用 mvnd 守護進程 | 34 秒 |
九、總結:最推薦的組合
| 類別 | 參數 |
|---|---|
| 編譯命令 | mvn clean compile -T 1C -DskipTests |
| IDEA VM Options | -Dfile.encoding=UTF-8 |
| IDEA 設置 | Build automatically + Parallel compile |
| Maven 鏡像 | 阿里云鏡像 |
| 可選工具 | mvnd 守護進程 |
十、結語
通過以上配置,你可以讓原本“磨洋工式”的 Maven 構建提速數倍。
如果是大型多模塊項目,提升會更明顯。
從此編譯不再是等待,而是“咻”地一下就好了
到此這篇關于IntelliJ IDEA中加速Maven編譯的終極指南的文章就介紹到這了,更多相關IntelliJ IDEA加速Maven編譯內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Bean?Searcher配合SpringBoot的使用詳解
這篇文章主要介紹了Bean?Searcher配合SpringBoot的使用,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06
MybatisPlus中@EnumValue注解使用及應用場景
@EnumValue注解標記在枚舉類型的字段上,表示該字段是枚舉值在數據庫中存儲的實際值,這對于枚舉的持久化是關鍵,確保枚舉在數據庫中的表示與Java枚舉類的一致性,下面就來詳細的介紹一下@EnumValue注解如何使用,感興趣的可以了解一下2025-10-10

