setting different maven mirror per project
我正在参与两个项目,两个项目都在使用私有Maven存储库(使用nexus)。
由于他们两个都使用自己的第三方库,因此我想为每个项目设置相应的镜像。幸运的是,我可以自由地编辑project1的pom.xml。
有什么方法可以注入一些变量或设置,以便我的?/ .m2 / settings.xml将mirror1用于project1,将mirror2作为默认对象(对于project2)?
好吧。。我查阅了很多stackoverflow问题和答案,但是我是maven的新手,我无法理解并在我的项目中采用这些答案。
不幸的是,无法在单个设置文件中支持多个镜像定义。
您将需要创建两个Maven设置文件,然后参数化Maven构建,例如
在maven 3.3.1之后,使用project-settings-extension加载项目设置,并将项目特定的镜像放入每个项目的
中的
1 2 3 4 5 6 7 8 | <extensions xmlns="http://maven.apache.org/EXTENSIONS/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/EXTENSIONS/1.0.0 http://maven.apache.org/xsd/core-extensions-1.0.0.xsd"> <extension> <groupId>com.github.gzm55.maven</groupId> project-settings-extension</artifactId> <version>0.1.1</version> </extension> </extensions> |
中的
1 2 3 4 5 6 7 8 9 | <settings> <mirrors> <mirror> <id>id</id> <url>https://url-for-this-project/</url> <mirrorOf>central</mirrorOf> </mirror> </mirrors> </settings> |