(极简配置)解释Maven-Setting文件mirrors配置本地私服多个仓库和远程仓库

既想用本地私服里的jar包,又想从远程中央仓库拉取私服里没有的jar包。

通过mirror配置仓库,mirror会拦截对于指定仓库的依赖请求,将请求指向指定的url.

<mirrors>
    <mirror>
      <!-- //唯一标识一个mirror,随便起名 -->
      <id>maven-release</id>
      <!-- //代表了一个镜像的替代位置,例如maven-releases就表示去maven-releases仓库的请求会指向下面所设置的url地址 -->
      <mirrorOf>maven-releases</mirrorOf>
      <!-- //没用,相当于注释 -->
      <name>Human Readable Name for this Mirror.</name>
      <!-- //mirror拦截了去maven-releases的请求,指向指定的url -->
      <url>http://mynexus.com/repositort/maven-releases</url>
    </mirror>
    
    <!--//再来指定一个snapshots的地址-->
     <mirror>
      <id>maven-snapshots</id>
      <mirrorOf>maven-snapshots</mirrorOf>
      <url>http://mynexus.com/repositort/maven-snapshots</url>
    </mirror>   
    
    <!--//如果不需要严格区分snapshots和releases,可以将url都指向public仓库,public里面可以设置包含多个本地仓库和远程仓库-->
     <mirror>
      <id>all</id>
      <!-- //mirrorOf设置为*,代表拦截所有请求,到url -->
      <mirrorOf>*</mirrorOf>
      <url>http://mynexus.com/content/groups/public</url>
    </mirror>   

    <!--//指定中央仓库地址,<mirrorOf>设置为central,私服里没有相关资源时去中央仓库找-->
    <mirror>    
      <id>central</id>    
      <mirrorOf>central</mirrorOf>    
      <name>aliyun maven</name>    
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>    
    </mirror>  

重要说明:
如果指定多个相同的mirrorOf,镜像只会执行第一个位置mirror。
官网说明如下:http://maven.apache.org/guides/mini/guide-mirror-settings.html

设置多个相同的mirrorOf只会识别第一个url拉取jar包。配置的多个mirror可以都放着不影响,只有第一个有效,建议选取一个镜像下载比较快的放在第一个。

** 如果非要用到多个releases或者snapshots仓库,可以弄个组(public),把需要的加入到组里,就会按照nexus里public里设置的仓库顺序,轮训访问各个仓库,直到下载到匹配到的。**

说明:
配置了mirror之后,setting里对应配置的<profile>-<repositories>就无效了哦,因为mirror把访问相关仓库的请求都给拦截了,重新指向了url。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值