只用一招,讓你Maven依賴下載速度快如閃電


一、背景

  眾所周知,Maven對於依賴的管理讓我們程序員感覺爽的不要不要的,但是由於這貨是國外出的,所以在我們從中央倉庫下載依賴的時候,速度如蝸牛一般,讓人不能忍,並且這也是大多數程序員都會遇到的問題。今天我們就教大家一招來完美解決這個問題,從此遠離下載依賴速度極慢的困擾。

二、原理及解決方式

1.其實maven為了解決遠程依賴下載慢的問題,提供了我們可以使用鏡像來進行解決。

2.鏡像:如果倉庫X可以提供倉庫Y存儲的所有內容,那么就可以認為X是Y的一個鏡像。換句話說,任何一個可以從倉庫Y獲得的構件,都胡夠從它的鏡像中獲取。

3.maven安裝程序conf文件夾下setting.xml中的<mirrorOf></mirrorOf>元素

<mirrorOf></mirrorOf>標簽里面放置的是要被鏡像的Repository ID。為了滿足一些復雜的需求,Maven還支持更高級的鏡像配置: 

  • <mirrorOf>*</mirrorOf> 

            匹配所有遠程倉庫。 

  • <mirrorOf>repo1,repo2</mirrorOf> 

            匹配倉庫repo1和repo2,使用逗號分隔多個遠程倉庫。 

  • <mirrorOf>*,!repo1</miiroOf> 

            匹配所有遠程倉庫,repo1除外,使用感嘆號將倉庫從匹配中排除。

4.注意

  由於鏡像倉庫完全屏蔽了被鏡像倉庫,當鏡像倉庫不穩定或者停止服務的時候,Maven仍將無法訪問被鏡像倉庫,因而將無法下載構件。

5.阿里為我們提供了公共的Maven鏡像庫,我們就來配置它作為我們的中央倉庫的鏡像(當然你也可以指定別的Maven鏡像庫,比如OSChina的,但是阿里的鏡像庫是目前我所知道的速度最快的一個)

<mirror>  
   <id>alimaven</id>  
   <name>aliyun maven</name>  
   <url>http://maven.aliyun.com/nexus/content/groups/public/</url>  
   <mirrorOf>central</mirrorOf>          
</mirror> 

我們只需要在我們的本地maven安裝位置下的conf文件夾下的setting.xml中的<mirrors>鏡像集合中添加如上的中央倉庫的鏡像就可以解決maven下載依賴速度慢的問題。

三、總結

  我們遇見了問題,要懂得去站在巨人的肩膀上。去尋找別人解決方案。還有就是一個好的企業不單單只為自己的員工謀福利,更為這個社會做出貢獻,我很欣賞阿里這樣的有情懷的公司!遇見問題要想着如何徹底的解決問題,而不是將問題隱藏而束之高閣~


免責聲明!

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



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