我刚在本地网络中建立了一个nexus存储库。此存储库公开了对Maven中央存储库的访问权限,以及三个不同的私有托管存储库:快照,发布和 ext3rdparty 。所有这些存储库都是nexus中公共组的一部分,我将其用作所有存储库的中央访问点:
http://nexus.server/nexus/content/groups/public/
我的问题:使用NetBeans作为开发环境,我可以访问所有存储库, ext3rdparty 。即,当我尝试构建基于存储在ext3rdparty repo中的库的项目时,我遇到了编译错误,并且NetBeans无法找到/导航此存储库中可用的任何工件。
我怀疑这是一个settings.xml / pom.xml问题而不是NetBeans问题,因为正如我所说,我可以访问我在其他存储库中发布的工件,但我无法弄清楚是什么问题
以下是我的settings.xml的完整内容,用于将maven重定向到我自己的存储库:
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://nexus.server/nexus/content/groups/public</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>central</id>
<url>http://central</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://central</url>
<releases>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
</activeProfiles>
<servers>
<server>
<id>nexus</id>
<username>user</username>
<password>***</password>
</server>
<server>
<id>releases</id>
<username>user</username>
<password>***</password>
</server>
<server>
<id>snapshots</id>
<username>user</username>
<password>***</password>
</server>
</servers>
这是我的父pom中与存储库相关的部分,允许部署:
<distributionManagement>
<repository>
<id>releases</id>
<name>Releases</name>
<url>http://nexus.server/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>Snapshots</name>
<url>http://nexus.server/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
知道什么是错的?
提前致谢!
修改:
半天失利:我最终最终删除了ext3rdparty存储库中的所有依赖项,再次将它们上传到存储库,并更新了所有索引,现在一切正常......
不知道这里有什么问题,但至少pom和设置都没关系。谢谢你的帮助。
答案 0 :(得分:1)
如果您遇到此类问题,可以右键单击“存储库”列表中受影响的存储库并激活“修复索引”或“更新索引”,然后检查“系统源”中的状态更新系统更新。
答案 1 :(得分:1)
您是否已将ext3rdparty回购添加到公共组?