【问题标题】:Searching Nexus never reveals latest artifact versions搜索 Nexus 从未发现最新的工件版本
【发布时间】:2011-12-06 23:15:37
【问题描述】:

我们的商店使用 Nexus 代理 Maven Central 和其他几个存储库。我们不时使用它来搜索工件以查看是否有其他版本可用。然而,它很少(如果有的话)显示这些更新版本的东西。这让开发人员多次望而却步,他们希望在 Nexus 中看到它们(如果它们存在的话)。

最近的一个例子是 org.springframework.flex:spring-flex 的 1.5.0.RELEASE 版本。如果不在我们的 Nexus 索引中,但我们可以通过谷歌搜索 Maven Central 找到它。 Maven 版本插件也能找到它。

我们如何配置我们的 Nexus 以刷新它的索引,以便我们将来可以信任它?

【问题讨论】:

  • 好问题。我快速浏览了一下,sonatype.com/books/nexus-book/reference/… 似乎表明它与“下载远程索引”设置有关。然而,调整未能让我得到想要的行为。
  • 是的 - 我所有的 repo 镜像都将“下载远程索引”设置为 true。但我感觉它只有在您设置存储库时才会下载。

标签: java version-control maven maven-3 nexus


【解决方案1】:

Nexus supports scheduled tasks 进行各种维护,最好在其中包含索引下载。总的来说,这本书有很多很好的信息。

【讨论】:

    【解决方案2】:

    当我搜索它时,我可以看到 org.springframework.flex:spring-flex:1.5.0.RELEASE,我有一个非常简单的 Nexus 安装。检查存储库的“元数据最大年龄”配置。首先登录,然后单击左侧面板中的“存储库”,选择您感兴趣的存储库(“Maven Central”,对吗?),然后单击底部的“配置”选项卡。 “元数据最长期限”位于“过期设置”部分下。如果将其设置为“-1”,则意味着永远不会更新 repo 元数据。我的设置为 1440 分钟(24 小时),我从来没有遇到过找不到新工件的问题。您所描述的问题正是此设置应该防止的问题。

    如果这似乎不起作用,您可以尝试设置计划任务来更新索引。以管理员身份登录,在左侧面板中选择“管理”,然后转到“计划任务”。添加“任务类型”=“下载索引”的任务,然后选择您希望它应用到的存储库或存储库组(或“所有存储库”)。确保在其上设置了“重复”。对需要更新的每个存储库/组执行此操作。

    【讨论】:

    • 我在 Nexus 1.5 上并没有这个选项,但我想我可以安排一个任务。将立即安排任务并在今天晚些时候或明天升级到 1.9 并报告。
    • 为所有 repos 安排重新下载索引产生了影响。我只是重新运行“mvn 版本:显示依赖更新”并做了一个差异,现在我看到了更新版本的所有内容。谢谢!
    【解决方案3】:

    您是否尝试过设置计划任务来下载远程索引?

    【讨论】:

      猜你喜欢
      • 2021-10-12
      • 1970-01-01
      • 2018-12-01
      • 1970-01-01
      • 2017-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-16
      相关资源
      最近更新 更多