Artifactory:如果允许匿名访问,Maven找不到文件

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:

我有一个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: 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,我已经批准了编辑。谢谢你。