前言
如下情况:maven配置多镜像,一般情况只走一个能访问到的镜像。
<mirrors>
<mirror>
<id>xxxreleases</id>
<mirrorOf>*</mirrorOf>
<name>xxxreleases</name>
<url>http://mirrors.xxx.com:8081/repository/xxxreleases/</url>
</mirror>
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
</mirrors>
配置多镜像
方法一 在settings.xml配置
- 把之前
<mirrors>
标签里的内容注释掉 - 设置镜像
<profiles>
<!-- 私服 -->
<profile>
<id>xxxreleases</id>
<repositories>
<repository>
<id>xxxreleases_id</id>
<url>http://mirrors.xxx.com:8081/repository/xxxreleases/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</profile>
<!-- 阿里云 -->
<profile>
<id>aliyun</id>
<repositories>
<repository>
<id>aliyun_id</id>
<url>https://maven.aliyun.com/repository/public</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</profile>
<profiles>
- 激活镜像
<activeProfiles>
<activeProfile>xxxreleases</activeProfile>
<activeProfile>aliyun</activeProfile>
</activeProfiles>
注意:仓库查找顺序是profiles中配置的仓库的倒序,即从下往上遍历,与activeProfiles配置顺序无关。
方法二 在pom.xml配置
为项目配置镜像。( 如若pom.xml 和 setting.xml 同时配置了,以 pom.xml 为准。)
<repositories>
<repository>
<id>xxxreleases</id>
<name>xxxreleases</name>
<url>http://mirrors.xxx.com:8081/repository/xxxreleases/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>