Artifactory:如果允许匿名访问,Maven找不到文件
我有一个Maven工件存储在Artifactory上受保护的存储库中。我在Artifactory:如果允许匿名访问,Maven找不到文件,maven,artifactory,Maven,Artifactory,我有一个Maven工件存储在Artifactory上受保护的存储库中。我在settings.xml中设置了用户凭据。同时,我配置了Artifactory,它允许匿名访问一些公共存储库 当我现在尝试用Maven下载工件时,我得到以下错误消息: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.1:get (default-cli) on project artifactory:
settings.xml
中设置了用户凭据。同时,我配置了Artifactory,它允许匿名访问一些公共存储库
当我现在尝试用Maven下载工件时,我得到以下错误消息:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.1:get (default-cli)
on project artifactory: Couldn't download artifact: Could not find artifact
XXX:common:jar:2.2.1-RELEASE in artifactory-XXX (http://XXX/artifactory/XXX)
当我在Artifactory中禁用匿名访问时,一切正常
因此,Maven似乎没有尝试使用提供的用户凭据搜索工件,因为它在Artifactory服务器的公共repo中找不到它
我是否缺少某些人工配置,或者无法在同一台服务器上同时拥有公共存储库和受保护存储库?如果选中了“隐藏未授权资源的存在”复选框,是否可以签入人工UI-->管理-->安全配置--> 如果是这样,这可以解释问题。选中此选项后,Artifactory将不会为未经授权的用户显示工件,并将返回404。如果这确实是问题所在,您可以设置,以便从第一个请求进行身份验证。以下是在
.m2/settings.xml
中配置抢占式身份验证的代码段:
<server>
<id>artifactory</id>
<configuration>
<httpConfiguration>
<all>
<usePreemptive>true</usePreemptive>
</all>
</httpConfiguration>
</configuration>
<username>...</username>
<password>...</password>
</server>
人工制品
真的
...
...
如果这不是问题所在,那么在收到此失败消息后,您在artifactory中的
artifactory.log
和request.log
中会看到什么 如果选中了“隐藏未授权资源的存在”复选框,是否可以签入Artifactory UI-->管理-->安全配置-->
如果是这样,这可以解释问题。选中此选项后,Artifactory将不会为未经授权的用户显示工件,并将返回404。如果这确实是问题所在,您可以设置,以便从第一个请求进行身份验证。以下是在.m2/settings.xml
中配置抢占式身份验证的代码段:
<server>
<id>artifactory</id>
<configuration>
<httpConfiguration>
<all>
<usePreemptive>true</usePreemptive>
</all>
</httpConfiguration>
</configuration>
<username>...</username>
<password>...</password>
</server>
人工制品
真的
...
...
如果这不是问题所在,那么在收到此失败消息后,您在artifactory中的
artifactory.log
和request.log
中会看到什么 嗨@Ariel,谢谢你的回答-这确实解决了我的问题。我在你的帖子中添加了一个代码片段并链接了Maven文档。谢谢Michael,我已经批准了编辑。谢谢你的回答。嗨@Ariel,谢谢你的回答-这确实解决了我的问题。我在你的帖子中添加了一个代码片段并链接了Maven文档。谢谢Michael,我已经批准了编辑。谢谢你。