本文主要是介绍maven 中配置多个mirror的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
有个小伙伴遇到一个疑问:他的工作笔记本,在公司用部门搭建的maven私服做镜像,回到家用aliyun的镜像,每次都要改配置文件,很麻烦,希望能够不改动配置文件的情况下,动态切换mirror配置。
我们知道 settings.xml 中可以使用变量,可以尝试使用变量解决。
<mirrors><mirror><id>aliyun</id><url>https://maven.aliyun.com/repository/public</url><mirrorOf>${aliyun}</mirrorOf></mirror><mirror><id>netease</id><url>http://mirrors.163.com/maven/repository/maven-public/</url><mirrorOf>${netease}</mirrorOf></mirror><mirror><id>default</id><url>http://192.168.0.100/nexus/repository/maven-public/</url><mirrorOf>central</mirrorOf></mirror>
</mirrors>
我们知道,默认情况下配置多个mirror的情况下,只有第一个生效。那么我们可以将最后一个作为默认值,前面配置的使用环境变量动态切换。
默认情况下,执行: mvn help:effective-settings
可以看到使用的是私服。
如果希望使用阿里云镜像,如下执行:
mvn help-effective-settings -Daliyun=central
同样的道理,使用网易镜像,则执行:
mvn help:effective-settings -Dnetease=central
测试无误。
如果在eclipse中,需要修改运行脚本的参数。
<mirrors><mirror><id>alimaven</id><name>aliyun maven</name><!-- <url>http://maven.aliyun.com/nexus/content/groups/public/</url><url>http://central.maven.org/maven2/</url><url>http://mvnrepository.com/</url> <url>https://repo1.maven.org/maven2/</url>--><url>http://maven.aliyun.com/nexus/content/groups/public/</url><mirrorOf>central</mirrorOf> </mirror>
</mirrors>
这篇关于maven 中配置多个mirror的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!