只用一招,让你Maven依赖下载速度快如闪电
一、背景
眾所周知,Maven對(duì)于依賴的管理讓我們程序員感覺爽的不要不要的,但是由于這貨是國外出的,所以在我們從中央倉庫下載依賴的時(shí)候,速度如蝸牛一般,讓人不能忍,并且這也是大多數(shù)程序員都會(huì)遇到的問題。今天我們就教大家一招來完美解決這個(gè)問題,從此遠(yuǎn)離下載依賴速度極慢的困擾。
二、原理及解決方式
1.其實(shí)maven為了解決遠(yuǎn)程依賴下載慢的問題,提供了我們可以使用鏡像來進(jìn)行解決。
2.鏡像:如果倉庫X可以提供倉庫Y存儲(chǔ)的所有內(nèi)容,那么就可以認(rèn)為X是Y的一個(gè)鏡像。換句話說,任何一個(gè)可以從倉庫Y獲得的構(gòu)件,都胡夠從它的鏡像中獲取。
3.maven安裝程序conf文件夾下setting.xml中的<mirrorOf></mirrorOf>元素
<mirrorOf></mirrorOf>標(biāo)簽里面放置的是要被鏡像的Repository ID。為了滿足一些復(fù)雜的需求,Maven還支持更高級(jí)的鏡像配置:?
- <mirrorOf>*</mirrorOf>?
????????????匹配所有遠(yuǎn)程倉庫。?
- <mirrorOf>repo1,repo2</mirrorOf>?
????????????匹配倉庫repo1和repo2,使用逗號(hào)分隔多個(gè)遠(yuǎn)程倉庫。?
- <mirrorOf>*,!repo1</miiroOf>?
????????????匹配所有遠(yuǎn)程倉庫,repo1除外,使用感嘆號(hào)將倉庫從匹配中排除。
4.注意
由于鏡像倉庫完全屏蔽了被鏡像倉庫,當(dāng)鏡像倉庫不穩(wěn)定或者停止服務(wù)的時(shí)候,Maven仍將無法訪問被鏡像倉庫,因而將無法下載構(gòu)件。
5.阿里為我們提供了公共的Maven鏡像庫,我們就來配置它作為我們的中央倉庫的鏡像(當(dāng)然你也可以指定別的Maven鏡像庫,比如OSChina的,但是阿里的鏡像庫是目前我所知道的速度最快的一個(gè))
<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下載依賴速度慢的問題。
三、總結(jié)
我們遇見了問題,要懂得去站在巨人的肩膀上。去尋找別人解決方案。還有就是一個(gè)好的企業(yè)不單單只為自己的員工謀福利,更為這個(gè)社會(huì)做出貢獻(xiàn),我很欣賞阿里這樣的有情懷的公司!遇見問題要想著如何徹底的解決問題,而不是將問題隱藏而束之高閣~
總結(jié)
以上是生活随笔為你收集整理的只用一招,让你Maven依赖下载速度快如闪电的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Angular2封装拖拽指令
- 下一篇: GO语言基础map与函数