1. 程式人生 > >maven配置多倉庫映象

maven配置多倉庫映象

1、國內訪問maven預設遠端中央映象特別慢

2、用阿里的映象替代遠端中央映象

3、大部分jar包都可以在阿里映象中找到,部分jar包在阿里映象中沒有,需要單獨配置映象

我想達到的目標:

在maven中配置一主一副兩個映象,大部分jar直接通過主映象可以找到,部分特殊jar在主映象中找不到時,自動去副映象中尋找。

我所處的階段:

修改了maven的全域性配置檔案setting.xml(其所處位置maven的安裝目錄maven/apache-maven-3.3.9/conf/setting.xml):

1、配置了本地倉庫:

  1. <localRepository>D:/maven/repository</localRepository
    >

2、配置了中央倉庫的映象:(換成了阿里的)
  1. <mirror>
  2.   <id>nexus-aliyun</id>
  3.   <name>nexus-aliyun</name>
  4.   <url>http://maven.aliyun.com/nexus/content/groups/public</url>
  5.   <mirrorOf>central</mirrorOf>
  6. </mirror>

希望你也做到了這一步。並且知道了mirrorOf為什麼要配置為central

我所做的嘗試:

我想在全域性配置檔案setting.xml配置兩個映象,希望有主從的區別,希望maven能在大部分情況下去阿里映象下載jar包,個別情況去附屬映象下載jar包。

其實關鍵就是要搞懂mirrorOf和映象的先後順序

與是我在setting.xml裡對這兩個主從映象,嘗試了各種mirrorOf和順序的組合,最後發現如下配置實現了我的願望

  1. <mirror>
  2.     <id>奇葩-mirror</id>
  3.     <name>奇葩-mirror</name>
  4.     <url>https://奇葩/repo/</url>
  5.     <mirrorOf>central</mirrorOf>
  6.   </mirror>
  7.   <mirror>
  8.     <id>nexus-aliyun
    </id>
  9.     <name>nexus-aliyun</name>
  10.     <url>http://maven.aliyun.com/nexus/content/groups/public</url>
  11.     <mirrorOf>*</mirrorOf>
  12.   </mirror>
以上配置,當maven發現所需的奇葩jar在阿里映象中沒有時,會自動去奇葩映象中尋找。奇葩jar的確下載下來了。

問題解決了,但是!我覺得這樣很不爽!對,你可能覺得我有強迫症,但的確是這樣,我覺得很不爽,難道你不這樣認為麼

maven的mirrorOf配置設計的很不科學,以上配置算解決了我的問題,但是我覺得這樣的mirrorOf配置在語義上很不符合我的邏輯。

為什麼要給一個很少用到的映象配置一個central?

如果有大拿發現有更好的配置邏輯和語義請告訴我

現實就是這樣,當你發現可以臨時解決問題時(可能是碰巧,隱患還很多),碰巧你還很忙,繼續改進的動力也就止步了,是的我就認為問題到此截至了,如果我有空的話,我就改maven的原始碼,重寫一套mirrorOf的邏輯。

轉折

今天,我看了另一篇文章,很基礎,連線在這裡:很基礎的知識

於是,我有了新的想法:

1,在全域性配置檔案setting.xml,只配置一箇中央倉庫的映象,即mirrorOf為central的映象只配置一個

2、在具體專案的pom.xml檔案裡配置特殊的倉庫

忙裡偷閒,實驗一下,成功了!

這才是很符合邏輯的配置呀,是不是覺得這樣的配置很舒服。

全域性配置裡就應該只配置一箇中央倉庫,其他的個別倉庫也不應該往全域性配置裡配,所以不用在糾結mirrorOf的配置語義了!就一個central,簡單明瞭!

終極解決方案:

同學提示我應該搭建自己的私服!這是另一個研究方向,日後再說!

我先說我的大招(我憋了很久了):

1、在全域性配置檔案setting.xml配置一個central倉庫的映象。

2、在具體專案的pom裡配置個別的倉庫,如下

  1. <repositories>
  2.     <repository>
  3.       <id>奇葩倉庫</id>
  4.       <url>https://奇葩倉庫/public/</url>
  5.     </repository>
  6.  </repositories>

相關推薦

maven配置倉庫映象

1、國內訪問maven預設遠端中央映象特別慢2、用阿里的映象替代遠端中央映象3、大部分jar包都可以在阿里映象中找到,部分jar包在阿里映象中沒有,需要單獨配置映象我想達到的目標:在maven中配置一主一副兩個映象,大部分jar直接通過主映象可以找到,部分特殊jar在主映象中找不到時,自動去副映象中尋找。我所

Maven配置映象(切換倉庫下載Jar包)

<!--配置兩個映象,達到多個倉庫資料來源--><mirrors>   <!--你的私服倉庫-->    <mirror>      <id>resposity1</id>      <mirror

maven配置倉庫鏡像(轉)

區別 組合 conf tail bar AI posit 奇葩 HR 原文地址:maven配置多倉庫鏡像 問題場景: 1、國內訪問maven默認遠程中央鏡像特別慢 2、用阿裏的鏡像替代遠程中央鏡像 3、大部分jar包都可以在阿裏鏡像中找到,部分jar包在阿裏鏡像中沒

關於Maven配置倉庫

maven配置多個倉庫 說明 maven的中央倉庫很強大,絕大多數的jar都收錄了。但也有未被收錄的。遇到未收錄的jar時,就會編譯報錯。  除了maven官方提供的倉庫之外,也有很多的倉庫。儘可能的將可信的倉庫(嗯,可信的倉庫!)新增幾個,彌補maven官方倉庫的不足。

Maven配置中央倉庫/映象

<!-- 阿里雲倉庫 --> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</na

Maven項目配置倉庫鏡像及Nexus配置

settings.xml詳細參考https://blog.csdn.net/haohaizijhz/article/details/72841489https://blog.csdn.net/cwh056056/article/details/49646111Maven項目配置多倉庫鏡像及Nexus配置

maven配置國內倉庫

必須 pan 地址 nload onf date clas .gz apach maven配置國內倉庫 修改conf/settings.xml文件 <mirror> <id>alimaven</id> <

1、Maven配置環境開發(dev、beta、prod)

我們在線上開發的時候不免要用到多個環境開發,一種的開發環境,一種是測試環境,還有就是生產環境,我們在開發的時候不可能直接用線上的環境進行修改,因為這樣會帶來很多無可預知的麻煩,所以我們要進行環境隔離~ <build> </build>裡面新增下面引數,設定Ma

maven配置倉庫

maven配置雙倉庫 mirrors標籤里加 <mirror> <id>kettle</id> <mirrorOf>content</mirrorOf> <name

【圖解】Windows下 apache-maven-3.2.3的安裝步驟+maven配置本地倉庫+Eclipse中配置maven

安裝步驟: 1.在安裝maven之前,先確保已經安裝JDK1.6及以上版本,並且配置好環境變數。 3.配置maven3的環境變數:先配置M3_HOME的環境變數,新建一個系統變數:M3_HOME , 路徑是:E:\code\apache-maven-3.2.3

Maven 配置本地倉庫出錯的解決

在配置前請先看看這個連結裡的東西 如果還是有錯誤的話就往下文看吧。 如果你在配置maven本地倉庫輸入 mvn help:system  執行出錯的話,不妨試試以下方法。 該方法僅對輸入mvn -v 可以成功執行,而輸入mvn help:system 出現Error

docker配置國內倉庫映象registry-mirror

   Docker在預設安裝之後,當需要下載映象時,通過命令docker pull learn/tutoral拉取示例映象,或者其他映象時,都是訪問預設的docker hub 上的映象,在國內網路環境下,下載一個映象基本都在半小時或者更長時間,可以考慮使用Registry

maven配置阿里雲映象

開啟maven配置檔案,找到標籤,新增如下:<mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name>

Win7下 maven3.1.1的安裝步驟+maven配置本地倉庫

簡單講下maven的安裝步驟: 1.在安裝maven之前,先確保已經安裝JDK1.6及以上版本,並且配置好環境變數。    下載apache-maven-3.1.1-bin.zip檔案後,並解壓到  D:\maven\apache-maven-3.1.1 3.配置maven3的環境變數:先配置M2

springboot maven 配置環境部署

1、springboot專案中配置application.properties內容 [email protected]@ 2、建立不同環境下的配置檔案 application-dev.properties、application-prod.properties、a

maven配置中央倉庫,阿里雲倉庫地址

1.開啟maven安裝目錄conf下的settings.xml檔案2.大概在145行找到<mirrors>下新增一個    <mirror>      <id>maven.net.cn</id>      <mirrorO

maven配置本地倉庫

大家好,今天給大家介紹一下maven,,我想做java開發的應該都有所瞭解,它的好處就是幫你管理你的專案所用的jar包.所有的包都可以在maven的遠端倉庫找到,其 網址是http://mvnrepository.com/,大家可以去這個地方下載自己所需要的東西。下面給大家

Windows下 maven3.0.4的安裝步驟+maven配置本地倉庫

簡單講下maven的安裝步驟: 1.在安裝maven之前,先確保已經安裝JDK1.6及以上版本,並且配置好環境變數。    下載apache-maven-3.0.4-bin.zip檔案後,並解壓到  D:\cloud_cms\maven\apache-maven-3.0.

配置倉庫與許可權配置

1.配置多倉庫(專案) 在實際專案開發中,我們可能會同時開發多個專案,那麼我們如何進行多專案監管呢? 通過svnserver進行倉庫監管,但是監管指令只能監管某個資料夾,而不能監管多個倉庫。 答:可通過監管WebApp總目錄,來達到

你還再為下載jar包慢而煩惱嗎?Maven配置阿里雲映象

## Maven配置阿里雲映象 ## 為什麼我們下載jar這麼慢 maven預設會從中央倉庫下載jar包,這個倉庫在國外,而且全世界的人都會從這裡下載,所以下載速度肯定是非常慢的。 ## 解決方案使用映象 ## 什麼是映象? 你照鏡子是時候鏡子裡的人就是映象 映象就相當於是中央倉庫的一個副本,