Maven依賴爆紅的幾種解決思路
說明:本文介紹Maven依賴爆紅,排查錯誤的幾種思路;
思路一:刪除本地倉庫.lastupdate文件;
找到本地maven倉庫,全局搜索.lastupdate文件,把搜索出來的文件全部刪除。.lastupdate后綴名的文件,表示是依賴下載失敗的殘余文件;

可以在本地倉庫的上級目錄,創(chuàng)建一個如下的.bat文件,可找到并刪除此類文件,后面有需要直接雙擊執(zhí)行即可;
set REPOSITORY_PATH=.\maven倉庫文件夾名,如mvn_repo rem 正在搜索... del /s /q %REPOSITORY_PATH%\*.lastUpdated rem 搜索完畢 pause
思路二:去掉阿里鏡像;
打開setting.xml配置,建議從idea中的這個選項中進入,可以同時驗證自己的maven路徑?jīng)]有設置錯誤;

去掉阿里鏡像或者有其他的鏡像設置,因為可能下載的依賴在此鏡像中不存在,只在中央倉庫才有;

思路三:私服;
如果以上兩種情況都排除了,依賴依舊報錯,可以考慮是不是因為有依賴是需要連接私服進行下載的,可查看對應依賴的groupId標簽;

如果是私服中的依賴,需要在setting.xml中設置私服ID,賬號密碼;

思路四:刪除爆紅依賴;
找到爆紅的依賴,在本地倉庫中找到這個依賴所在的文件夾,并刪除,然后在idea中刷一下maven
有些公司項目可能是分開的,如登錄驗證、提供基礎服務的是一個項目,其他項目依賴于這個項目才能啟動,這兩個項目不在一個IDEA窗口中,通過jar包進行引用。在這種情況下,提示類不存在或其他問題可能是本地jar包沒有更新,可以在本地倉庫找到對應的目錄刪掉,重新Reload一下Maven,可能可以解決問題

思路五:刪除爆紅依賴,手寫;
在pom文件中,刪除爆紅的那個依賴標簽(dependency標簽內(nèi)的內(nèi)容),手敲一遍,或者剪切刷一下pom文件,再粘貼一遍;

思路六:查看pom文件是否有紅色波浪線;
查看pom文件最上面是否有紅色波浪線,看有沒有提示錯誤,這種情況大多數(shù)時候是依賴未指定版本,另外,也需要注意pom文件中的標簽是有前后順序的,需要檢查以下pom文件標簽的順序,與其他pom文件對比一下。

思路七:沒有指定版本;
查看父模塊中版本鎖定,檢查是不是父模塊中沒有鎖定對應依賴的版本,而子模塊中爆紅的依賴沒有指定版本;

思路八:jar是否不存在;
這一點和私服類似,需要查看這個依賴是不是公司獨有的,不屬于Maven中央倉庫的依賴。有些時候,公司會有一些獨有的jar包,這些jar包可能是委托其他公司開發(fā)或者買的其他公司的產(chǎn)品,需要通過Maven命令把該jar包添加到本地Maven倉庫中才能正常引用。同樣,判斷這一點,也通過groupId標簽中的域名推測。
如果是這種情況,可以在公司的文件管理平臺找到對應的jar包(也可以在項目里面找找,或找同事拷一份),下載到本地。在本地jar包所在的位置,打開命令窗口,通過下面命令安裝到本地倉庫中,再引用就不會報錯了。
mvn install:install-file -Dfile='jar路徑' -DgroupId='groupID名' -DartifactId='artifactID名' -Dversion='版本名' -Dpackaging=jar
需要注意,較新的Maven版本執(zhí)行該命令需要有pom文件的支持,所以如果執(zhí)行失敗了,可以試下把該jar包中的pom文件取出來,和jar在同級再執(zhí)行。
而且,一般來說,提供的jar里面會有關于該jar的maven坐標配置,在install的時候,可以參考這里面的內(nèi)容,不要隨手設置。

另外
如果Maven中對應模塊沒有plugins dependence兩個選項,如下,參考:http://m.fzitv.net/program/32872474k.htm

到此這篇關于Maven依賴爆紅的幾種解決思路的文章就介紹到這了,更多相關Maven依賴爆紅內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
SpringBoot中實現(xiàn)動態(tài)數(shù)據(jù)源切換過程
本文介紹了SpringBoot中實現(xiàn)動態(tài)數(shù)據(jù)源切換的關鍵知識點和設計思路,主要包括:多數(shù)據(jù)庫架構(gòu)的挑戰(zhàn)、配置多個數(shù)據(jù)源、使用AbstractRoutingDataSource進行數(shù)據(jù)源路由、基于AOP實現(xiàn)動態(tài)切換、事務管理及異常處理策略2026-05-05
SpringBoot2.0整合jackson配置日期格式化和反序列化的實現(xiàn)
這篇文章主要介紹了SpringBoot2.0整合jackson配置日期格式化和反序列化的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
淺談Java編程之if-else的優(yōu)化技巧總結(jié)
說實話,其實我很討厭在代碼里大量使用if-else,一是因為該類代碼執(zhí)行方式屬于面向過程的,二嘛,則是會顯得代碼過于冗余.這篇筆記,主要記錄一些自己在工作實踐當中針對if-else的優(yōu)化心得,將會不定期地長期更新,需要的朋友可以參考下2021-06-06
IDEA遠程連接HBase及其Java API實戰(zhàn)詳解
這篇文章主要介紹了IDEA遠程連接HBase及其Java API實戰(zhàn)詳解,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04
Spring常用注解 使用注解來構(gòu)造IoC容器的方法
下面小編就為大家分享一篇Spring常用注解 使用注解來構(gòu)造IoC容器的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
springboot項目使用nohup將日志指定輸出文件過大問題及解決辦法
在Spring Boot項目中,使用nohup命令重定向日志輸出到文件可能會使日志文件過大,文章介紹了兩種解決方法:一是創(chuàng)建腳本直接清除日志文件,二是創(chuàng)建腳本保留部分日志內(nèi)容,并將這些腳本加入定時任務中,這可以有效控制日志文件的大小,避免占用過多磁盤空間2024-10-10

