使用IDEA進行Maven項目開發時,時不時會遇到pom.xml報錯的情況,其中很大概率是因為Maven依賴的jar包下載失敗,找來找去也沒有找到是什么問題,困擾了很多程序猿,這里給出IDEA中Maven依賴下載失敗解決方案,給大家參考,實測有用。
文章目錄
首先檢查網絡有沒有問題,確定網絡沒有問題,請看下一步
多次點擊重新導入Maven依賴的按鈕
重新導入Maven依賴有兩種方式,如上圖所示。如果多次點擊重新導入依賴按鈕依然報錯,請看下一步
設置自動導入Maven依賴
Settings -> Build,Execution,Deployment -> Build Tools -> Maven -> Importing,如下圖
這樣設置后,如果Maven倉庫存在依賴的話,IDEA會自動導入到項目中,如果沒有用,看下一步
在IDEA中找到Maven的配置文件的地址,然后檢查配置的遠程倉庫或者鏡像有沒有問題
如上圖所示,我的配置在C:\develop\Maven\apache-maven-3.5.3\conf\settings.xml
我配置的是阿里雲倉庫,沒有什么問題,如果配置的是Maven私服Nexus的話,需要檢查配置的路徑和私服網絡有沒有問題
<!-- 配置阿里雲倉庫 -->
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
如果上面幾步都沒有解決問題,可以使用以下腳本刪除Mvaen中的lastUpdated文件
如果你的電腦是Windows系統,新建cleanLastUpdated.bat文件
注意:記得將腳本cleanLastUpdated.bat文件的倉庫路徑改為自己Maven倉庫的路徑
@echo off
rem 這里寫你的倉庫路徑
set REPOSITORY_PATH=C:\develop\Maven\apache-maven-3.5.3\respository
rem 正在搜索...
for /f "delims=" %%i in ('dir /b /s "%REPOSITORY_PATH%\*lastUpdated*"') do (
del /s /q %%i
)
rem 搜索完畢
pause
保存,然后雙擊執行腳本就可以刪除lastUpdated文件,然后點擊重新導入Maven依賴的按鈕
Maven倉庫依賴存在依舊報錯
我的依賴問題到這一步才得到解決,好累,不過問題終於解決了!
有兩種解決方式:
-
把pom.xml中對應的依賴先刪除,然后刷新右側,之后再把依賴粘貼到pom.xml中,再次刷新右側就好了
-
從本地倉庫將對應的包刪除掉,然后讓maven重新下載
比如你要刪除spring-boot-starter-web-2.1.8.RELEASE.jar,你要進入Maven倉庫路徑C:\develop\Maven\apache-maven-3.5.3\respository\org\springframework\boot\spring-boot-starter-web\2.1.8.RELEASE\spring-boot-starter-web-2.1.8.RELEASE.jar,然后進行刪除