Maven鏡像倉庫替換為阿里云鏡像倉庫

來源:簡書
作者:OzanShareing
時間:2020-09-04
4476
更新Indices速度很慢,或者直接就出現(xiàn)假死狀態(tài)。如何解決?

解決方案

在本地maven的setting配置文件中加上阿里云鏡像地址就行了:

ia_16100000002.png

新增配置內(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,都是鏡像。

索引:中央倉庫帶有索引文件以方便用戶對其進行搜索,完整的索引文件至2019年1月22日大小約為1.04G,索引每周更新一次。

本地倉庫:是建立在本地機器上的Maven倉庫,本地倉庫是中央倉庫(或者說遠程倉庫)的一個緩沖和子集,當你構建Maven項目的時候,首先會從本地倉庫查找資源,如果沒有,那么Maven會從遠程倉庫下載到你本地倉庫。這樣在你下次使用的時候就不需要從遠程下載了。如果你所需要的Jar包版本在本地倉庫沒有,而且也不存在于遠程倉庫,Maven在構建的時候會報錯,這種情況可能發(fā)生在有些Jar包的新版本沒有在Maven倉庫中及時更新。Maven缺省的本地倉庫地址為${user.home}/.m2/repository。也就是說,一個用戶會對應的擁有一個本地倉庫。當然你可以通過修改${user.home}/.m2/settings.xml配置這個地址:

<settings>
  ···  <localRepository> D:\maven\repository</localRepository>
  ...</settings>

提交內(nèi)容:只要你的項目是開源的,而且你能提供完備的POM等信息,你就可以提交項目文件至中央倉庫,這可以通過Sonatype提供的開源Maven倉庫托管服務實現(xiàn)。

IntelliJ IDEA利用索引實現(xiàn)自動補全

眾所周知,由于偉大的中國防火墻,所以在使用IDEA下載Maven倉庫索引的時候,要么無法訪問,要么就是速度極慢,這對開發(fā)人員帶來了極大的不便,所以一般公司都用Nexus搭建一個公司內(nèi)部的私服。同時利用私服更有利于對公司內(nèi)部開發(fā)人員依賴的Jar包版本進行控制。

也許你會問,中央倉庫帶有索引,為什么本地的IDEA也需要下載索引呢?那么直接看下圖你就明白了,如果本地沒有下載索引的話,在pom.xml文件中添加依賴是得不到任何提示的。

IntelliJ IDEA中Maven插件配置

ia_16100000003.gif

IntelliJ已經(jīng)內(nèi)置了對Maven插件的支持,當然你也可以配置自己的Maven,只需要進入File->Settings->Maven->Maven home directory|User settings file|Local repository配置即可。注意如果使用自己配置的Maven,那么一定要勾選Override,否則配置不生效。

ia_16100000004.png

下載Maven倉庫的索引

在配置完成之后就可以下載倉庫索引了,注意這是一個非常耗時的過程,建議利用晚上或者出去午飯時間下載。下載過程及下載完成之后狀態(tài)如下圖所示。

ia_16100000005.png

原文鏈接:點擊前往 >
版權說明:本文內(nèi)容來自于簡書,本站不擁有所有權,不承擔相關法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯(lián)系管理員(zzx@kchuhai.com)刪除!
個人VIP
小程序
快出海小程序
公眾號
快出海公眾號
商務合作
商務合作
投稿采訪
投稿采訪
出海管家
出海管家