我假设 Nexus 适用于托管在 Maven Central 上的所有标准依赖项。
-X
您可以通过在构建时使用参数打开调试来确定 Maven 从哪里下载。会有很多噪音,但是如果你看上面几行,你的构建由于找不到依赖项而失败,它会告诉你:
- 它试图下载依赖项的位置
- 是否使用镜子
- 下载时是否有任何 HTTP 错误代码
如何http://www.smartclient.com/maven2
在您的 Nexus 代理中设置?作为单独的代理存储库?Nexus 可以访问这个 repo(它是“服务中”并且没有被阻止)吗?
Nexus 中的此存储库是否已添加到“公共”组?如果你不想要这个,那么:
您必须在 settings.xml 中为此存储库配置一个单独的镜像,该镜像指向 Nexus 中的 URL。
还要检查您是否在 POM 中添加了存储库,例如
<project>
...
<repositories>
<repository>
<id>smartclient</id>
<name>SmartClient Maven Repository</name>
<url>http://www.smartclient.com/maven2/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
...
</project>
然后在您的 settings.xml 中为此存储库配置一个代理条目:
<settings>
...
<mirrors>
<mirror>
<id>smartclient-nexus-proxy</id>
<mirrorOf>smartclient</mirrorOf>
<url><url of your smartclient proxy repository in Nexus></url>
</mirror>
...