当前位置 : 主页 > 网页制作 > HTTP/TCP >

Artifactory在访问虚拟存储库URL时返回HTTP 302

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正面临Artifactory v3.9.5解决工件的问题.我有以下设置: 名为“gradle-snaphot”的本地存储库允许快照 名为“repos”的虚拟存储库,包含“gradle-snapshot” 神器X上传到“gradle-snapshot” 现在,当
我正面临Artifactory v3.9.5解决工件的问题.我有以下设置:

>名为“gradle-snaphot”的本地存储库允许快照
>名为“repos”的虚拟存储库,包含“gradle-snapshot”
>神器X上传到“gradle-snapshot”

现在,当我尝试直接获取工件时,它工作正常(传递了信号,但在此省略):

wget http://myrepo/artifactory/gradle-snapshot/x/SNAPSHOT/maven-metadata.xml?trace

但是当我尝试通过虚拟存储库获取工件时,它不起作用:

wget http://myrepo/artifactory/repos/x/SNAPSHOT/maven-metadata.xml?trace

wget输出是:

Resolving myrepo... xx.xxx.xxx.xx
Connecting to myrepo|xx.xxx.xxx.xx|:80... connected.
HTTP request sent, awaiting response... 302 Moved Temporarily
Location: http://myrepo/artifactory/repos/x/SNAPSHOT/maven-metadata.xml/ [following]
--2015-12-11 11:17:18--  http://myrepo/artifactory/repos/x/SNAPSHOT/maven-metadata.xml/
Reusing existing connection to myrepo:80.
HTTP request sent, awaiting response... 404 Not Found
2015-12-11 11:17:18 ERROR 404: Not Found.

Artifactory正在返回302暂时移动到相同的URL,并添加了像目录表示法一样的斜杠.任何想法为什么不能以这种方式访问​​虚拟存储库?因此,我的Gradle构建无法解决此依赖关系.

此问题的根本原因是指​​向 http://mirrors.ibiblio.org/pub/mirrors/maven2的远程存储库.
无论您使用哪条路径,对此存储库的所有请求都将重定向到 http://maven.ibiblio.org/maven2/,更重要的是请求的资源是否存在.
结果是,当从虚拟存储库请求工件时,Artifactory将在某个时刻尝试从此远程存储库获取工件,并获得302应答,该应答重定向到存储库的根目录. Artifactory假设它获得了它正在寻找的资源(获得了200个响应代码),但返回的资源是一个文件夹,因此URL的末尾附加/.
最好的解决方案是删除此远程存储库并依赖于 JCenter.
如果确实需要,请使用 http://maven.ibiblio.org/maven2/ URL保存重定向.
网友评论