Maven依賴(lài)的JAR包下載慢?看看華為云如何解決
相信許多JAVA開(kāi)發(fā)者在日常工作中時(shí)常會(huì)碰到這種情況,那就是編譯Maven工程時(shí),工程所依賴(lài)的jar包文件下載非常慢,甚至經(jīng)常出現(xiàn)下載不成功的問(wèn)題,今天,小編就給大家講講如何提升Maven依賴(lài)包的下載速度
由于Maven工程默認(rèn)配置的依賴(lài)倉(cāng)庫(kù)主要部署在國(guó)外,從國(guó)內(nèi)下載速度較慢,國(guó)內(nèi)許多高校或公司通過(guò)架設(shè)開(kāi)源鏡像站來(lái)解決該問(wèn)題,這些鏡像站一般都是向國(guó)內(nèi)開(kāi)發(fā)者開(kāi)放的,我們可以通過(guò)配置國(guó)內(nèi)的鏡像來(lái)解決下載速度慢的問(wèn)題。
所謂開(kāi)源鏡像站,指的是存放開(kāi)源操作系統(tǒng)、開(kāi)源組件等鏡像文件的站點(diǎn),國(guó)內(nèi)的鏡像站通過(guò)定期/實(shí)時(shí)同步國(guó)外源站的開(kāi)源操作系統(tǒng)或組件,為國(guó)內(nèi)用戶(hù)提供高速、穩(wěn)定的依賴(lài)包下載服務(wù)。
目前國(guó)內(nèi)比較常用的鏡像站包括華為開(kāi)源鏡像站、清華大學(xué)鏡像站、中科大鏡像站等等,今天主要以華為開(kāi)源鏡像站為示例給大家進(jìn)行講解。
方式一,配置針對(duì)所有項(xiàng)目的全局鏡像庫(kù)
在Maven安裝目錄下找到Maven的配置文件setting.xml,里面有個(gè)<mirrors>配置項(xiàng)目,這里配置了所有的全局鏡像,你可以在<mirrors>下增加以下節(jié)點(diǎn):
如下圖所示:
需要注意的是,<mirrors>下配置了多個(gè)鏡像庫(kù)時(shí),只有當(dāng)***個(gè)鏡像庫(kù)無(wú)法連接時(shí),才會(huì)使用第二個(gè)鏡像庫(kù)查找jar文件,否則即使***個(gè)鏡像庫(kù)里找不到想的jar文件,也不會(huì)去第二個(gè)鏡像庫(kù)查找。因此,若需要配置多個(gè)鏡像庫(kù),可將<mirrorOf>設(shè)置為*,!repo1,在<profiles>標(biāo)簽中增加個(gè)性化配置,并在<activeProfiles>標(biāo)簽中將其激活,完整如下圖所示:
方式二,配置針對(duì)單個(gè)項(xiàng)目的鏡像庫(kù)
在項(xiàng)目的maven配置文件pom.xml里,添加repositories配置即可,如下:
如下圖所示
注意:在pom.xml中配置了repository后,setting.xml文件中關(guān)于mirror部分的<mirrorOf>標(biāo)簽不能設(shè)置為*,否則pom.xml中的repository配置不會(huì)生效。<mirrorOf>需要配置為*,!huaweicloud將huaweicloud鏡像設(shè)為例外,如下圖,
更多信息可以參考華為開(kāi)源鏡像站