Artifactory 中部署的工件不会显示在虚拟仓库中
Deployed artefact in Artifcatory does not show up in virtual repo
我有一个工件 (com.test#verifier;1.1
),我将其部署在名为 libs-release-local
的存储库中。这个 repo 有 Virtual Repository Association
,其中一个叫做 libs-release
(这是我对 Artifactory 给出的默认设置的理解)。
在我的项目中 ivy-settings.xml
以下
<resolvers>
<chain name="main">
<url name="artifactory" m2compatible="false">
<artifact
pattern="${ivy.artifactory.server}/${ivy.repo}/${ivy.default.artifact.pattern}" />
<ivy
pattern="${ivy.artifactory.server}/${ivy.repo}/${ivy.default.ivy.pattern}" />
</url>
<ibiblio name="public" m2compatible="true"
root="http://artifactory:9090/artifactory/libs-release" />
</chain>
获取人工制品时,它失败了
[ivy:retrieve] module not found: com.test#verifier;1.1
[ivy:retrieve] ==== artifactory: tried
[ivy:retrieve] http://artifactory:9090/artifactory/unstable/com.test/verifier/1.1/ivys/ivy-1.1.xml
[ivy:retrieve] -- artifact com.test#verifier;1.1!verifier.jar:
[ivy:retrieve] http://artifactory:9090/artifactory/unstable/com.test/verifier/1.1/jars/verifier-1.1.jar
[ivy:retrieve] ==== public: tried
[ivy:retrieve] http://artifactory:9090/artifactory/libs-release/com/test/verifier/1.1/verifier-1.1.pom
[ivy:retrieve] -- artifact com.test#verifier;1.1!verifier.jar:
[ivy:retrieve] http://artifactory:9090/artifactory/libs-release/com/test/verifier/1.1/verifier-1.1.jar
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: UNRESOLVED DEPENDENCIES ::
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: com.test#verifier;1.1: not found
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve]
[ivy:retrieve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
显然我的假设是错误的,当我部署到 libs-release-local
时,它也可以通过 libs-release
访问。
我需要做什么,使用给定的 ivy 设置,我确实收到了依赖关系?
根据提供的请求跟踪,问题出在为 libs-release 存储库配置的 include/exclude 模式:
2017-05-30T09:33:57.915+02:00 Adding no aggregated repositories - requested artifact is rejected by the include exclude patterns of 'libs-release'
您应该查看 libs-release 存储库配置并检查导致文件下载被拒绝的模式。
我有一个工件 (com.test#verifier;1.1
),我将其部署在名为 libs-release-local
的存储库中。这个 repo 有 Virtual Repository Association
,其中一个叫做 libs-release
(这是我对 Artifactory 给出的默认设置的理解)。
在我的项目中 ivy-settings.xml
以下
<resolvers>
<chain name="main">
<url name="artifactory" m2compatible="false">
<artifact
pattern="${ivy.artifactory.server}/${ivy.repo}/${ivy.default.artifact.pattern}" />
<ivy
pattern="${ivy.artifactory.server}/${ivy.repo}/${ivy.default.ivy.pattern}" />
</url>
<ibiblio name="public" m2compatible="true"
root="http://artifactory:9090/artifactory/libs-release" />
</chain>
获取人工制品时,它失败了
[ivy:retrieve] module not found: com.test#verifier;1.1
[ivy:retrieve] ==== artifactory: tried
[ivy:retrieve] http://artifactory:9090/artifactory/unstable/com.test/verifier/1.1/ivys/ivy-1.1.xml
[ivy:retrieve] -- artifact com.test#verifier;1.1!verifier.jar:
[ivy:retrieve] http://artifactory:9090/artifactory/unstable/com.test/verifier/1.1/jars/verifier-1.1.jar
[ivy:retrieve] ==== public: tried
[ivy:retrieve] http://artifactory:9090/artifactory/libs-release/com/test/verifier/1.1/verifier-1.1.pom
[ivy:retrieve] -- artifact com.test#verifier;1.1!verifier.jar:
[ivy:retrieve] http://artifactory:9090/artifactory/libs-release/com/test/verifier/1.1/verifier-1.1.jar
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: UNRESOLVED DEPENDENCIES ::
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve] :: com.test#verifier;1.1: not found
[ivy:retrieve] ::::::::::::::::::::::::::::::::::::::::::::::
[ivy:retrieve]
[ivy:retrieve] :: USE VERBOSE OR DEBUG MESSAGE LEVEL FOR MORE DETAILS
显然我的假设是错误的,当我部署到 libs-release-local
时,它也可以通过 libs-release
访问。
我需要做什么,使用给定的 ivy 设置,我确实收到了依赖关系?
根据提供的请求跟踪,问题出在为 libs-release 存储库配置的 include/exclude 模式:
2017-05-30T09:33:57.915+02:00 Adding no aggregated repositories - requested artifact is rejected by the include exclude patterns of 'libs-release'
您应该查看 libs-release 存储库配置并检查导致文件下载被拒绝的模式。