一、settings.xml介绍
- settings.xml是maven的全局配置文件,maven的配置文件存在三个地方
- 项目中的pom.xml,这个是pom.xml所在项目的局部配置文件
- 用户配置:${user.home}/.m2/settings.xml
- 全局配置:${M2_HOME}/conf/settings.xml
- 优先级:pom.xml > 用户配置 > 全局配置,作用范围越小优先级越高
- 使用配置时,会先将它们各自的内容进行合并,如果存在重复的配置项,优先级高的会覆盖优先级低的
- 我们一般修改全局的settings.xml添加镜像源
二、添加maven镜像
- 打开settings.xml文件,搜索mirrors,在其下方位置添加镜像源
<!--<mirrors>标签中可以包含多个<mirror>标签,每个<mirror>用于设置一个镜像仓库-->
<mirrors>
<!-- 这里设置的是阿里公共代理仓库 -->
<mirror>
<!-- 镜像的唯一标识符,用来区分不同的镜像 -->
<id>aliyunmaven</id>
<!-- 镜像名称 -->
<name>阿里云公共仓库</name>
<!-- 镜像的URL地址 -->
<url>https://maven.aliyun.com/repository/public</url>
<!-- 设置被代理的maven远程仓库ID,*表示匹配所有请求,即所有发送到远程仓库的请求都会被拦截,
并将请求重定向到<url>标签设置的代理仓库地址
如果同时设置了多个代理镜像,精确匹配优先级>通配符匹配
如果为同一个仓库设置了多个代理镜像,则默认会选择第一个(即写在最前面的镜像)
-->
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
三、nexus-aliyun和aliyunmaven区别
-
访问阿里云云效maven,选择"指南" -> “仓库介绍”,
可以看到nexus-aliyun和aliyunmaven都是阿里云的公共仓库地址(central仓和jcenter仓的聚合仓),
只不过http://maven.aliyun.com/nexus/content/groups/public是老版的阿里云仓库地址,
新版地址为https://maven.aliyun.com/repository/public -
老版阿里云公共仓库
<mirrors>
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
</mirrors>
- 新版阿里云公共仓库
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
四、总结
本文介绍了maven配置文件settings.xml、标签的用法以及nexus-aliyun和aliyunmaven的区别,如有疑问欢迎评论区留言探讨