相信許多JAVA開(kāi)發(fā)者在日常工作中時(shí)常會(huì)碰到這種情況,那就是編譯Maven工程時(shí),工程所依賴的jar包文件下載非常慢,甚至經(jīng)常出現(xiàn)下載不成功的問(wèn)題,今天,小編就給大家講講如何提升Maven依賴包的下載速度
由于Maven工程默認(rèn)配置的依賴倉(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)用戶提供高速、穩(wěn)定的依賴包下載服務(wù)。
目前國(guó)內(nèi)比較常用的鏡像站包括華為開(kāi)源鏡像站、清華大學(xué)鏡像站、中科大鏡像站等等,今天主要以華為開(kāi)源鏡像站為示例給大家進(jìn)行講解
方式一,配置針對(duì)所有項(xiàng)目的全局鏡像庫(kù)
在Maven安裝目錄下找到Maven的配置文件setting.xml,里面有個(gè)配置項(xiàng)目,這里配置了所有的全局鏡像,你可以在下增加以下節(jié)點(diǎn):
??<mirror>
????<id>huaweicloud</id>
????<mirrorOf>*</mirrorOf>
????<url>https://mirrors.huaweicloud.com/repository/maven/</url>
</mirror>
如下圖所示:

需要注意的是,下配置了多個(gè)鏡像庫(kù)時(shí),只有當(dāng)?shù)谝粋€(gè)鏡像庫(kù)無(wú)法連接時(shí),才會(huì)使用第二個(gè)鏡像庫(kù)查找jar文件,否則即使第一個(gè)鏡像庫(kù)里找不到想的jar文件,也不會(huì)去第二個(gè)鏡像庫(kù)查找。因此,若需要配置多個(gè)鏡像庫(kù),可將設(shè)置為*,!repo1,在標(biāo)簽中增加個(gè)性化配置,并在標(biāo)簽中將其激活,完整如下圖所示:

方式二,配置針對(duì)單個(gè)項(xiàng)目的鏡像庫(kù)
在項(xiàng)目的maven配置文件pom.xml里,添加repositories配置即可,如下:
????<repository>
??????<id>huaweicloud</id>
??????<name>huaweicloud</name>
??????<url>>https://mirrors.huaweicloud.com/repository/maven/</url>
????</repository>
??</repositories>
如下圖所示:

注意:在pom.xml中配置了repository后,setting.xml文件中關(guān)于mirror部分的標(biāo)簽不能設(shè)置為*,否則pom.xml中的repository配置不會(huì)生效。需要配置為*,!huaweicloud將huaweicloud鏡像設(shè)為例外,如下圖:

更多信息可以參考華為開(kāi)源鏡像站。