我尝试为我们的组织设置一个内部远程存储库,并希望将该存储库用作镜像。
因为它不会连接到任何中央存储库以解决工件(即使我需要这种行为,因为我的服务器无法连接互联网),我按照以下步骤从本地存储库手动部署了所有工件
工件已成功部署,我可以浏览这些表单UI。
现在我在我的settings.xml中使用此repo作为镜像
<mirrors>
<mirror>
<id>internal</id>
<url>http://localhost:8081/artifactory/libs-release-local</url>
<mirrorOf>external:*</mirrorOf>
</mirror>
</mirrors>
我尝试使用目标mvn clean package
现在我收到了错误:
返回代码是:503,ReasonPhrase:服务不可用
错误日志:
[错误]插件org.apache.maven.plugins:maven-clean-plugin:2.5或其中一个依赖项无法解析:无法读取o的工件描述符 rg.apache.maven.plugins:maven-clean-plugin:jar:2.5:无法传输工件org.apache.maven.plugins:maven-clean-plugin:pom:2.5 from / to internal (http://localhost:8081/artifactory/libs-release-local):无法传输文件:http://localhost:8081/artifactory/libs-release-local/org/apache/maven/plugins/maven-clean-plugin/2.5/maven-clean-plugin-2.5.pom。返回码为:503,ReasonPhrase:服务不可用。 - &GT; [帮助1]
如果我在网络中使用相同的URL(localhost:8081 / artifactory / libs-release-local / org / apache / maven / plugins / maven-clean-plugin / 2.5 / maven-clean-plugin-2.5.pom)浏览器正在下载工件。
的settings.xml
<settings xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<proxies>
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<username>proxy_user</username>
<password>proxy_password</password>
<host>proxy_name</host>
<port>8080</port>
</proxy>
</proxies>
<mirrors>
<mirror>
<id>internal</id>
<url>http://localhost:8081/artifactory/libs-release-local</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>
</settings>
我错过了什么?
答案 0 :(得分:4)
问题在于您的代理设置。当前设置将导致对localhost的所有请求都通过代理,该代理将无法与localhost连接,因此返回503。 要解决此问题,请将以下内容添加到 settings.xml 文件中的proxy settings:
<nonProxyHosts>localhost</nonProxyHosts>