最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

詳解maven的setting配置文件中mirror和repository的區(qū)別

 更新時間:2018年12月18日 09:38:13   作者:DrinkwaterGor  
這篇文章主要介紹了詳解maven的setting配置文件中mirror和repository的區(qū)別,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

當maven需要到的依賴jar包不在本地倉庫時, 就需要到遠程倉庫下載 .

這個時候如果mavensetting.xml中配置了鏡像 , 而且鏡像配置的規(guī)則中匹配到目標倉庫時 ,

maven認為目標倉庫被鏡像了, 不會再去被鏡像倉庫下載依賴jar包, 而是直接去鏡像倉庫下載.

簡單而言, mirror可以攔截對遠程倉庫的請求 , 改變對目標倉庫的下載地址

repository

repository就是個倉庫.

maven里有兩種倉庫,本地倉庫和遠程倉庫。

遠程倉庫相當于公共的倉庫,大家都能看到。

本地倉庫是你本地的緩存副本,只有你看的到,主要起緩存作用。

當你向倉庫請求插件或依賴的時候,會先檢查本地倉庫里是否有。

如果有則直接返回,否則會向遠程倉庫請求,并被緩存到本地倉庫。

遠程倉庫可以在工程的pom.xml文件里指定。

如果沒指定,默認會到http://repo1.maven.org/maven2這個地方去請求插件和依賴包。

*<repository> *

*  <snapshots> *

*  <enabled>false</enabled> *

*  </snapshots> *

*  <id>central</id> *

*  <name>Maven Repository Switchboard</name> *

*  <url>**[http://repo1.maven.org/maven2</url>*

* </repository> *

本地倉庫默認在你本地的用戶目錄下的.m2/repository目錄下。

mirror

mirror就是鏡像,主要提供一個方便地切換遠程倉庫地址的途徑。

比如,上班的時候在公司,用電信的網絡,連的是電信的倉庫。

回到家后,是網通的網絡,我想連網通的倉庫,就可以通過mirror配置,統(tǒng)一把我工程里的倉庫地址都改成聯(lián)通的,而不用到具體工程配置文件里一個一個地改地址。

mirror的配置在.m2/settings.xml里。如:

*<mirrors> *

* <mirror> *

* <id>UK</id> *

* <name>UK Central</name> *

* <url>**[http://uk.maven.org/maven2</url> ](http://uk.maven.org/maven2%3C/url%3E%C2%A0%C2%A0)*

* <mirrorOf>central</mirrorOf> *

* </mirror> *

*</mirrors> *

這樣的話,就會給上面id為central的遠程倉庫做了個鏡像。

以后向central這個倉庫發(fā)的請求都會發(fā)到http://uk.maven.org/maven2而不是http://repo1.maven.org/maven2了。

<mirrorOf>central</mirrorOf>里是要替代的倉庫的id。

如果填*,就會替代所有倉庫。

高級鏡像配置

為了滿足一些復雜的需求,Maven還支持更高級的鏡像配置:

1.<mirrorOf>*</mirrorOf>
匹配所有遠程倉庫。

2.<mirrorOf>external:*</mirrorOf>
匹配所有遠程倉庫,使用localhost的除外,使用file://協(xié)議的除外。也就是說,匹配所有不在本機上的遠程倉庫。

3.<mirrorOf>repo1,repo2</mirrorOf>
匹配倉庫repo1和repo2,使用逗號分隔多個遠程倉庫。

4.<mirrorOf>*,!repo1</miiroOf>
匹配所有遠程倉庫,repo1除外,使用感嘆號將倉庫從匹配中排除。

需要注意的是,由于鏡像倉庫完全屏蔽了被鏡像倉庫,當鏡像倉庫不穩(wěn)定或者停止服務的時候,Maven仍將無法訪問被鏡像倉庫,因而將無法下載構件。

例子

個人的maven配置了阿里的鏡像 , 而項目中需要使用到一些第三方jar包, 為了方便引入 , 已上傳到192.168.0.201的nexus私服下.
但由于個人maven阿里的鏡像使用默認mirrorOf規(guī)則=*, 所有的倉庫都被鏡像 , 不會再去192.168.0.201下下載第三方jar包
上傳的第三方jar包目標路徑 :
http://192.168.0.201:8081/nexus/content/groups/public/com/alipay/sdk-java/20170615110434/sdk-java-20170615110434.pom

被鏡像后路徑 :
http://maven.aliyun.com/nexus/content/groups/public/com/alipay/sdk-java/20170615110434/sdk-java-20170615110434.pom
所以需要修改鏡像的mirrorOf規(guī)則 , 避免默認從鏡像中下載

maven的conf/setting.xml

 <mirrors>
  <!--國內阿里云提供的鏡像,非常不錯-->
 <mirror>
  <!--This sends everything else to /public -->
  <id>aliyun_nexus</id>
  <!--對所有倉庫使用該鏡像,除了一個名為maven_nexus_201的倉庫除外-->
  <!--這個名為maven_nexus_201的倉庫可以在javamaven項目中配置一個repository-->
  <mirrorOf>*,!maven_nexus_201</mirrorOf> 
  <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
 </mirror>
 </mirrors>

maven項目下的pom.xml配置一個遠程倉庫

<repositories>
  <!-- 192.168.0.201遠程倉庫 -->
  <repository>
   <id>maven_nexus_201</id>
   <name>maven_nexus_201</name>
   <layout>default</layout>
   <url>http://192.168.0.201:8081/nexus/content/groups/public/</url>
   <snapshots> 
    <enabled>true</enabled> 
    </snapshots>
  </repository>
</repositories>

http://192.168.0.201:8081/nexus下上傳第三方jar包依賴

登陸已經安裝好的nexus私有倉庫,如圖:

如何通過網頁方式將jar包上傳到nexus?

點擊左邊菜單“Repositories”,選擇右邊列表“3rd party“

如何通過網頁方式將jar包上傳到nexus?

點擊“3rd party”,選擇artifact Upload,如下圖:

如何通過網頁方式將jar包上傳到nexus?

在artifact Upload界面顯示的有GAV Parameter,groupId,artifactId,Version,Packaging等等參數,界面如圖:

如何通過網頁方式將jar包上傳到nexus?

將以上參數填完之后,選擇要上傳的jar包,點擊”add artifact“,最后點擊”save“保存按鈕即可,如下圖所示:

如何通過網頁方式將jar包上傳到nexus?

maven項目下的pom.xml引入依賴

<dependency>
 <groupId>com.alipay</groupId>
 <artifactId>sdk-java</artifactId>
 <version>20170615110434</version>
</dependency>

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 詳解Java如何實現(xiàn)小頂堆和大頂堆

    詳解Java如何實現(xiàn)小頂堆和大頂堆

    今天給大家?guī)淼氖顷P于Java的相關知識,文章圍繞著Java如何實現(xiàn)小頂堆和大頂堆展開,文中有非常詳細的解釋及代碼示例,需要的朋友可以參考下
    2021-06-06
  • java 類加載機制和反射詳解及實例代碼

    java 類加載機制和反射詳解及實例代碼

    這篇文章主要介紹了java 類加載機制和反射詳解及實例代碼的相關資料,需要的朋友可以參考下
    2017-03-03
  • java中GZIP壓縮解壓類使用實例

    java中GZIP壓縮解壓類使用實例

    這篇文章主要介紹了java中GZIP壓縮解壓類使用實例的相關資料,需要的朋友可以參考下
    2017-03-03
  • Java三大特性之多態(tài)詳解

    Java三大特性之多態(tài)詳解

    多態(tài)是繼封裝、繼承之后,面向對象的第三大特性。多態(tài): 是指同一行為,具有多個不同表現(xiàn)形式。本文將來和大家詳細說說Java中的多態(tài),需要的可以了解一下
    2022-10-10
  • Java爬蟲 信息抓取的實現(xiàn)

    Java爬蟲 信息抓取的實現(xiàn)

    本文主要介紹 Java爬蟲 信息抓取的實現(xiàn),這里詳細介紹了如何實現(xiàn)該方法,并附示例代碼供大家學習參考,有興趣的小伙伴可以參考下
    2016-09-09
  • Java之理解多態(tài)詳解

    Java之理解多態(tài)詳解

    大家好,本篇文章主要講的是Java之理解多態(tài)詳解,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • 淺析Java內部類——成員內部類

    淺析Java內部類——成員內部類

    這篇文章主要介紹了Java 成員內部類的相關資料,幫助大家更好的理解和學習Java 內部類的相關知識,感興趣的朋友可以了解下
    2020-08-08
  • Java實現(xiàn)簡單局域網聊天室

    Java實現(xiàn)簡單局域網聊天室

    這篇文章主要為大家詳細介紹了Java實現(xiàn)簡單局域網聊天室,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • SpringBoot 將多個Excel打包下載的實現(xiàn)示例

    SpringBoot 將多個Excel打包下載的實現(xiàn)示例

    本文主要介紹了SpringBoot 將多個Excel打包下載的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-12-12
  • SpringMVC找不到Controller路徑的解決方案

    SpringMVC找不到Controller路徑的解決方案

    這篇文章主要介紹了SpringMVC找不到Controller路徑的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06

最新評論

龙泉市| 安阳市| 长寿区| 抚顺县| 黑水县| 阿勒泰市| 大安市| 沾益县| 赣州市| 米泉市| 衡东县| 呼伦贝尔市| 微博| 喀喇沁旗| 新昌县| 安多县| 英吉沙县| 乌鲁木齐县| 濮阳市| 余江县| 伊宁县| 盐津县| 乾安县| 札达县| 常德市| 广汉市| 舒城县| 安福县| 罗甸县| 永昌县| 城市| 阿鲁科尔沁旗| 全南县| 乐清市| 墨竹工卡县| 北辰区| 邹城市| 策勒县| 永修县| 高青县| 乡城县|