【问题标题】:how do i tell maven to get latest version of artifact from custom nexus repository我如何告诉 maven 从自定义 nexus 存储库中获取最新版本的工件
【发布时间】:2026-01-31 06:15:01
【问题描述】:

我有以下要求。 我需要从自定义 nexus 存储库而不是快照存储库下载最新版本的工件。

请推荐

谢谢。

【问题讨论】:

标签: maven nexus


【解决方案1】:

要获取任何工件的最新版本,只需从依赖项中省略 <version> 标记即可。这样 maven 将始终从远程 repo 获取此工件的最新版本。

警告:请记住,这不是处理依赖项的首选方式,也不是正确的依赖项管理流程。通过保持版本号开放结束,您的项目很可能会获取现在不向后兼容的任何库的特定版本,并且可能会破坏您在项目中的功能。因此,始终建议为任何应用程序所需的所有工件指定一个特定版本号,并且在更新任何库版本时,应该对其进行适当的测试。

编辑

对于 maven3,您可以使用开放式版本标签的功能。像这样的

<version>[1.12.4,)</version>

查看this page 了解有关版本范围的更多详细信息

【讨论】:

  • Maven 3 不允许省略版本号。
  • 是的,更新了 maven3 和 maven2 的答案
  • 不要使用版本范围,因为您的构建不再可重现。
  • 但是可以说,所述工件存在于许多存储库中,例如快照,发布,abc 然后在这种情况下,如果我不提及依赖版本标签,它将从哪个存储库中选择最新版本??
  • @user2315104 这取决于您的settings.xml 以及您如何定义存储库。默认情况下,始终按照您在 pom.xml/settings.xml 中定义的顺序搜索存储库。
【解决方案2】:

根据这个问题:https://issues.apache.org/jira/browse/MNG-3092 快照不能被排除(至少在这个问题被修复之前)。

【讨论】:

    最近更新 更多