Maven構建項目速度太慢的解決辦法


問題描述

通過idea新建maven項目,參數設置好后,idea自動構建maven項目時,速度很慢。

參數設置如圖:

執行時間如下圖:

Total time為8:49,花了將近十分鍾時間。

連續嘗試了幾次,都是如此,感覺編輯器卡住了一樣。

問題原因

[DEBUG] Searching for remote catalog: http://repo1.maven.org/maven2/archetype-catalog.xml這一條語句執行了很久。

編輯器在執行mvn archetype:generate命令時,需要指定一個archetype-catalog.xml文件,該命令的參數為-DarchetypeCatalog,用來指定archetype-catalog.xml文件從哪里獲取,可選值為:remote,internal,local,默認為remote,即從http://repo1.maven.org/maven2/archetype-catalog.xml路徑下載archetype-catalog.xml文件,查看該文件可知,如下圖:

該文件大小將近6M,在網速不理想情況下,由此方式下載勢必會造成卡頓的情況。

速度測試

於是使用上述archetypeCatalog參數的三個數值remote,internal,local分別進行測試,得出如下結果:

  • 參數值為remote時,Total time為8:49,如圖:

  • 參數值為internal時,Total time為1:19,如圖:

  • 參數值為local時,Total time為4:01,如圖:

當然,測試取樣數值較少,且為網速較低時測試,得到的結果也只是一個大概情況,即internal優於local優於remote,可能網速較快時,誤差可以忽略。

因此,修改配置時的archetypeCatalog參數值即可。

archetypeCatalog設置

1、remote為默認值,不需設置。

2、修改archetypeCatalog為internal,有以下兩種方法:

  • 在新建maven項目時添加archetypeCatalog參數,並將值設置為internal

  • 直接修改maven配置參數,在使用mvn archetype:generate命令時,加上-DarchetypeCatalog=internal

3、修改archetypeCatalog為local前,需要先將archetype-catalog.xml下載至本地,並將此文件放至maven倉庫目錄下,設置archetypeCatalog為local時,同樣有以下兩種方法:

  • 在新建maven項目時添加archetypeCatalog參數,並將值設置為local

  • 直接修改maven配置參數,在使用mvn archetype:generate命令時,加上-DarchetypeCatalog=local

幾種解決方法都已羅列出來,至於選哪種,就看你喜好啦,編程過程中無卡頓,美滋滋。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM