【问题标题】:Adding remote repository in artifactory在工件中添加远程存储库
【发布时间】:2015-09-07 16:07:39
【问题描述】:

我在远程存储库下的工件中有 jcenter 存储库。由于缺少一些工件,例如 qpid,我决定删除 jcenter 并将其添加回来。当我删除 jcenter 存储库并将其添加回来时,它没有下载任何工件。 存储库树结构如下所示

在删除 jcenter 存储库之前是这样的。 为什么它无法导入任何工件?我可以看到与之关联的 URL (http://jcenter.bintray.com/) 有很多工件。

【问题讨论】:

    标签: maven repository artifactory


    【解决方案1】:

    Artifactory 中的remote repository 用作缓存代理。这意味着它会从远程 URL 下载工件并将它们缓存在 Artifactory 中,
    当您从 Artifactory 删除 JCenter 存储库时,您删除了所有缓存的工件。
    重新创建存储库后,您的缓存为空。这就是为什么当browsing jcenter-cache 时,您看不到任何工件。您可以使用 remote browsing 功能来查看远程 URL 中哪些工件可用,但当前没有缓存
    要重新填充缓存,您需要从远程存储库下载工件。通常最好的方法是运行使用此存储库的构建。

    如果问题是根本没有从远程存储库中解析工件,请尝试以下操作:

    • 确保在 Artifactory 中正确配置了存储库。使用“测试”按钮确保 URL 正确,并且您可以访问远程 URL。
    • 检查您的构建工具是否已正确配置为使用您配置的存储库。检查这一点的一种方法是监视 Artifactory request log 以查找来自您的构建工具的请求。

    当您缺少某些依赖项时,删除存储库不是一个好习惯。更好的方法是检查它们是否在远程 URL 中可用并将它们下载到缓存中。 Artifactory 可以选择在 Bintray 中执行 remote search,这可以帮助您在 JCenter 中查找工件。

    【讨论】:

    • 感谢您的快速回答:)
    • 但即使我从 Eclipse 运行构建,我也会收到 artifact not found 错误。我认为它没有从 jcenter 下载任何工件。坐下来从 jcenter 将每个 jar 添加到 artifactory 是唯一的解决方案吗?没有其他解决办法吗?
    • 您确定您的构建已正确配置为使用 Artifactory?您是否在 Artifactory 请求日志 (/logs/request.log) 中看到任何请求?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-10-03
    • 2021-12-11
    • 2017-05-02
    • 2019-11-30
    • 1970-01-01
    • 2012-08-10
    • 2011-06-29
    相关资源
    最近更新 更多