我已经配置了许多存储库,正如我在
中找到的那样MAVEN_HOME/conf/settings.xml
我原以为这会增加我工作场所的套餐供应量。
不幸的是,它会产生一些额外的问题。例如,我已配置存储库
<repository>
<id>lhogie.i3s.maven.repo</id>
<name>Luc Hogie Maven repository</name>
<url>http://www.i3s.unice.fr/~hogie/maven_repository/</url>
</repository>
哪个网站目前正在关闭或不稳定。
尽管如此,我的Maven正试图一次又一次地从这个存储库中下载一些内容,接受权限被拒绝,然后再次尝试。即使对于那些在中央存储库中平静存在的软件包,它也会这样做。
为什么?
为什么不尝试其他存储库如果被淘汰出其中一个?
STDOUT的样本
Downloading: http://www.i3s.unice.fr/~hogie/maven_repository/org/eclipse/jetty/toolchain/jetty-toolchain/1.4/jetty-toolchain-1.4.pom
ш■э 25, 2014 4:18:22 PM org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector tryConnect
INFO: I/O exception (java.net.SocketException) caught when connecting to the target host: Permission denied: connect
ш■э 25, 2014 4:18:22 PM org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector tryConnect
INFO: Retrying connect
ш■э 25, 2014 4:18:43 PM org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector tryConnect
INFO: I/O exception (java.net.SocketException) caught when connecting to the target host: Permission denied: connect
ш■э 25, 2014 4:18:43 PM org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector tryConnect
INFO: Retrying connect
ш■э 25, 2014 4:19:04 PM org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector tryConnect
INFO: I/O exception (java.net.SocketException) caught when connecting to the target host: Permission denied: connect
ш■э 25, 2014 4:19:04 PM org.apache.maven.wagon.providers.http.httpclient.impl.client.DefaultRequestDirector tryConnect
INFO: Retrying connect
答案 0 :(得分:1)
可能是因为Maven不想隐藏你的问题。我不知道Maven使用的算法,但我认为它只是按顺序尝试所有repos,直到它找到它所寻找的内容。所以你可以简单地添加Maven Central作为第一个回购,它会提前停止。
但更好的解决方案通常是在本地网络中安装代理服务器。它将保留您使用的所有包的镜像。然后,您可以告诉Maven询问代理(因此您不必在许多开发人员的所有settings.xml
中保持N repos处于相同状态)以及为新开发人员执行第一次构建(或者在您必须擦拭你当地的回购)会快得多。