由于各种原因对于这个问题并不重要,我们在现有的Nexus旁边设置了一个新的Nexus . 我们的想法是将第一个用于所有第三方依赖项(中央),将新项目用于所有版本和快照 .
我创建了以下settings.xml:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>c:/Temp/.m2/repository</localRepository>
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://lonsl1101545.uk.net.intra:8081/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>centric-release</id>
<mirrorOf>*</mirrorOf>
<url>http://eurvlii11783.xmp.net.intra:8081/nexus/content/groups/public/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>nexus</id>
<url>http://central</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
<profile>
<id>centric-release</id>
<repositories>
<repository>
<id>centric-release</id>
<url>http://eurvlii11783.xmp.net.intra:8081/nexus/content/repositories</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
<activeProfile>centric-release</activeProfile>
</activeProfiles>
</settings>
作为测试,我将模块XXX的快照版本部署到了centric-release repo,工作正常 . 但是,当我为一些依赖于XXX的工件运行mvn install时,构建失败:
无法在nexus中找到神器XXX(http:// lonsl1101545.uk.net.intra:8081 / nexus / content / groups / public) . 它似乎甚至没有尝试在Centric-release repo中寻找它 .
如果快照存在于nexus repo中,它确实找到了它 .
设置设置以满足要求的正确方法是什么?