解決方案
在本地maven的setting配置文件中加上阿里云鏡像地址就行了:
新增配置內(nèi)容:
<!-- 阿里鏡像倉庫 --> <mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url> https://maven.aliyun.com/nexus/content/groups/public/ </url> <mirrorOf>central</mirrorOf> </mirror> </mirrors>
接著,更新依賴就成功了。
科普一下
Maven的倉庫、索引
中央倉庫:目前來說,https://repo1.maven.org/maven2/是真正的Maven中央倉庫的地址,該地址內(nèi)置在Maven的源碼中,其它地址包括著名的ibiblio.org,都是鏡像。
索引:中央倉庫帶有索引文件以方便用戶對其進(jìn)行搜索,完整的索引文件至2019年1月22日大小約為1.04G,索引每周更新一次。
本地倉庫:是建立在本地機(jī)器上的Maven倉庫,本地倉庫是中央倉庫(或者說遠(yuǎn)程倉庫)的一個緩沖和子集,當(dāng)你構(gòu)建Maven項目的時候,首先會從本地倉庫查找資源,如果沒有,那么Maven會從遠(yuǎn)程倉庫下載到你本地倉庫。這樣在你下次使用的時候就不需要從遠(yuǎn)程下載了。如果你所需要的Jar包版本在本地倉庫沒有,而且也不存在于遠(yuǎn)程倉庫,Maven在構(gòu)建的時候會報錯,這種情況可能發(fā)生在有些Jar包的新版本沒有在Maven倉庫中及時更新。Maven缺省的本地倉庫地址為${user.home}/.m2/repository。也就是說,一個用戶會對應(yīng)的擁有一個本地倉庫。當(dāng)然你可以通過修改${user.home}/.m2/settings.xml配置這個地址:
<settings> ··· <localRepository> D:\maven\repository</localRepository> ...</settings>
提交內(nèi)容:只要你的項目是開源的,而且你能提供完備的POM等信息,你就可以提交項目文件至中央倉庫,這可以通過Sonatype提供的開源Maven倉庫托管服務(wù)實現(xiàn)。
IntelliJ IDEA利用索引實現(xiàn)自動補(bǔ)全
眾所周知,由于偉大的中國防火墻,所以在使用IDEA下載Maven倉庫索引的時候,要么無法訪問,要么就是速度極慢,這對開發(fā)人員帶來了極大的不便,所以一般公司都用Nexus搭建一個公司內(nèi)部的私服。同時利用私服更有利于對公司內(nèi)部開發(fā)人員依賴的Jar包版本進(jìn)行控制。
也許你會問,中央倉庫帶有索引,為什么本地的IDEA也需要下載索引呢?那么直接看下圖你就明白了,如果本地沒有下載索引的話,在pom.xml文件中添加依賴是得不到任何提示的。
IntelliJ IDEA中Maven插件配置
IntelliJ已經(jīng)內(nèi)置了對Maven插件的支持,當(dāng)然你也可以配置自己的Maven,只需要進(jìn)入File->Settings->Maven->Maven home directory|User settings file|Local repository配置即可。注意如果使用自己配置的Maven,那么一定要勾選Override,否則配置不生效。
下載Maven倉庫的索引
在配置完成之后就可以下載倉庫索引了,注意這是一個非常耗時的過程,建議利用晚上或者出去午飯時間下載。下載過程及下載完成之后狀態(tài)如下圖所示。