MAVEN中镜像和仓库的区别

MAVEN中镜像和仓库的区别?

①. 仓库:指的就是repository,项目中依赖的第三方库,这个库所在的位置叫做仓库。MAVEN仓库能帮助我们管理构件(主要是JAR),它就是放置所有JAR文件(WAR,ZIP,POM等等)的地方。多个仓库,按定义顺序进行搜索排列。MAVEN仓库的详情参照:MAVEN仓库<repositories>详解
②. 镜像:指的是mirrors,它是一个拦截器,它会拦截MAVEN对远程仓库的相关请求,把请求里的远程仓库的地址,重新定向到镜像里配置的地址。远程仓库的网络加速器,一般是出于网速考虑。多个镜像按照id字母顺序进行搜索排列(即与编写的顺序无关)。如果不配置镜像时,默认使用的MAVEN的中央库。

<!-- 以下<mirror>的含义是:项目中所有向central这个仓库发的请求,都会转发到http://maven.aliyun.com/nexus/content/groups/public/而不是https://repo.maven.apache.org/maven2了。-->
<mirrors>
  <mirror>
      <!-- id表示该镜像的唯一标识符, 用来区分不同的mirror元素, 
      同时会使用server中id相同的授权配置链接到镜像,也就是说如果该镜像需要认证,
      则需要配置一个id为aliyun的<server>即可 -->  		
      <id>aliyun</id>
      <name>aliyun maven</name>
      <!-- 被镜像的仓库的id, 必须与repository节点设置的 ID 一致。
        | mirrorOf 的配置语法: 
        | central     = 表示该镜像为中央仓库的镜像,任何对于中央仓库的请求都会转至该镜像(http://maven.aliyun.com/nexus/content/groups/public/)。
        | *           = 匹配所有远程仓库,这样的话所有在pom中定义的仓库都不生效了。
        | external:*  = 匹配除localhost、使用file://协议外的所有远程仓库。
        | repo1,repo2 = 匹配仓库repo1和repo2。
        | *,!repo1    = 匹配所有远程仓库, repo1 除外。
        |-->
      <mirrorOf>central</mirrorOf>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  </mirror>
</mirrors>

MAVEN中镜像和仓库的优先级?

pom.xml 和 setting.xml 中配置的仓库和镜像优先级关系(mirror 优先级高于 repository):
mirror(setting.xml)> repository(pom.xml) > repository(setting.xml)
如果镜像配置了 mirrorOf = *, 则不管项目的 pom.xml 配置了什么仓库, 最终都会被镜像到镜像仓库

MAVEN依赖的搜索顺序?

步骤 1 - 在本地仓库中搜索,如果找不到,执行步骤 2,如果找到了则执行其他操作。
步骤 2 - 在中央仓库中搜索,如果找不到,并且有一个或多个远程仓库已经设置,则执行步骤 4,如果找到了则下载到本地仓库中以备将来引用。
步骤 3 - 如果远程仓库没有被设置,MAVEN将简单的停滞处理并抛出错误(无法找到依赖的文件)。
步骤 4 - 在一个或多个远程仓库中搜索依赖的文件,如果找到则下载到本地仓库以备将来引用,否则 MAVEN将停止处理并抛出错误(无法找到依赖的文件)。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cloneme01

谢谢您的支持与鼓励!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值