一、前言

  之前没有搞清楚pom.xml里面配置的repositorys节点配置的仓库和mirrors里面配置的仓库的“镜像”间的关系,特意去搜索了相关内容,这边有篇文章讲得透彻,所以这边转载一下~

二、正文

  1. pom.xml里的repositories元素,里面可以包含多少repository(至少默认包含了中央仓库,仓库id为central,可以写个id为central的mirror或者repository覆盖默认的中央仓库,该仓库总是在effective-pom里repositories元素的最后一 个子元素),每个repository都有一个id(此id非常重要),命令行执行:mvn help:effective-pom可以验证
  2. maven获取真正起作用的repository集合流程:首先会获取pom.xml里的repository集合,然后在settings.xml里找mirrors元素,如果repository的id和mirror的mirrorOf的值相同,则该mirror替代该repository,如果该repository找不到对应的mirror,则使用其本身,依此可以得到最终起作用的repository集合
  3. 关于maven如何查找pom.xml里dependencies里配置的插件,暂且不考虑本地仓库的存在(笔者注:应该是先查找本地的仓库,如果本地仓库查找不到,再通过repository里面配置的仓库进行查找),maven会根据最终的repository集合里依次查找,如果查到了就从该仓库下载,并且停止对后续repository的查找(找到了就停)。所以可以看出用户在pom.xml里配置repository时,repository的顺序还是挺重要的。

   注:从超级父pom里继承来的中央repository在effective-pom里总是为最后一个repository.

   对于寻找reposiotry的mirror的一些理解:
   在settings.xml里配置mirror里,应该将<mirrorOf>*</mirrorOf>放在最后一个---->最好这么做

三、链接

1、http://blog.csdn.net/wuhelang90/article/details/49633579

四、联系本人

  小生有些时候去看别人博客的时候会有苦恼,对于博客的内容有不解之时,很难去联系作者探讨,为此,小生留下联系方式,如有游客阅读敝人博客有不解之处,可以加入小生的QQ群进行询问~(纯公益,但是比较忙的时候不一定能及时解答,还望谅解)~

小杜比亚-博客园:261746360

Maven中mirrors和repository的关系的更多相关文章

  1. IDEA External libraries 不显示Maven中引入的repository

    原文:https://blog.csdn.net/dj_dengjian/article/details/88668012 记录一下遇到的这个问题的解决方法,也是困惑了半天,感觉这是maven的bug ...

  2. maven:mirrors和repository的关系区别

    原文地址:http://my.oschina.NET/sunchp/blog/100634 1 Repository(仓库) 1.1 Maven仓库主要有2种: remote repository:相 ...

  3. 在Maven中设置Nexus私有服务为中央工厂(repository)

    原文:http://blog.csdn.net/mexican_jacky/article/details/50275695 nexus中的仓库列表 第一种方式: <repositories&g ...

  4. Maven中的库(repository)详解

    Maven中的库(repository)是构件(artifact)的集合.构件以一定的布局存储在库中. 本地仓库 vs. 远程仓库 运行Maven的时候,Maven所需要的任何构件都是直接从本地仓库获 ...

  5. maven中的mirrors

    文章转自http://blog.csdn.net/technologyboy/article/details/17143641 简单点来说,repository就是个仓库.maven里有两种仓库,本地 ...

  6. maven中的继承和聚合的关系

    maven中的继承和聚合的关系:两者的目的是不一样的,聚合的目的是能够快速的构建项目,继承的目的是减少重复配置.聚合:定义一个聚合模块,然后在pom文件中添加<module></mo ...

  7. (转)Maven中的库(repository)详解 ---repository配置查找构件(如.jar)的远程库

    转:https://blog.csdn.net/taiyangdao/article/details/52287856 Maven中的库(repository)是构件(artifact)的集合.构件以 ...

  8. Maven中settings.xml的配置项说明

    本文部分引用自:http://haohaoxuexi.iteye.com/blog/1827778 在Maven中提供了一个settings.xml文件来定义Maven的全局环境信息.这个文件会存在于 ...

  9. Maven中settings.xml的配置项说明精讲

    1.Maven的配置文件(Maven的安装目录/conf/settings.xml ) 和 Maven仓库下(默认的Maven仓库的是用户家目录下的.m2文件,可以另行制定)的settings.xml ...

随机推荐

  1. FirstBird--项目流程

    创建项目(英文路径)—–img图片文件 创建窗体–设置大小(Basic—size–>320*480)—最大化功能禁用(Expert–>setResizable(false)) 添加面板–设 ...

  2. 用C#实现WEB代理服务器

    用C#实现Web代理服务器 代理服务程序是一种广泛使用的网络应用程序.代理程序的种类非常多,根据协议不同可以分成HTTP代理服务程序.FTP代理服务程序等,而运行代理服务程序的服务器也就相应称为HTT ...

  3. html+php上传图片文件到服务器

    html+php上传图片文件到服务器 一.html代码 <body> <form action="" method="post" enctyp ...

  4. centOS下更新yum源

    CentOS下更新yum源 1.使用如下命令,备份/etc/yum.repos.d/CentOS-Base.repo. cp /etc/yum.repos.d/CentOS-Base.repo /et ...

  5. Python学习手册之控制结构(一)

    在上一篇文章中,我们对 Python 进行了简单介绍和介绍了 Python 的基本语法,现在我们继续介绍 Python 控制结构. 查看上一篇文章请点击:https://www.cnblogs.com ...

  6. PHP代码统计文件大小(自动确定单位)

    php中有一个系统自带的计算文件大小的函数,就是filesize(),但是这个函数是以字节为单位的,但是在一些情况下,我们需要很直观的了解一个文件大小,就不仅仅需要字节B这个单位了,还需要KB,MB, ...

  7. 用filter()筛选出素数

    'use strict'; function get_primes(arr) { return arr.filter(function isPrime(number) { if (typeof num ...

  8. Date()日期函数浏览器兼容问题踩坑

    原文:Date()日期函数浏览器兼容问题踩坑 之前用layui做的一项目中,table中用到了日期格式化的问题.直接没多想,撸代码就完了呗,结果最近一段时间客户反馈说显示日期跟录入日期不一样(显示日期 ...

  9. MVC中Session的使用和传递

    1.登录时在controller中记录session,代码如下: public ActionResult Login(UserLoginViewModel uViewModel) { if (Mode ...

  10. c/c++不能返回局部对象和局部变量的指针或引用解释

    在编写c/c++代码时,调用函数的书写让程序变得整洁易读,但是调用函数的返回值(局部变量的返回值,变量,结构体,数组等)也有注意事项.c/c++严禁返回局部变量的指针或引用. 其实函数的返回值的规则非 ...