【问题标题】:Maven Version Range - downloads all the available versions not just the latest oneMaven 版本范围 - 下载所有可用版本,而不仅仅是最新版本
【发布时间】:2017-12-28 21:30:40
【问题描述】:

我有两个模块:A 和 B。 A 依赖于 B。

在模块 A 中存在对 B 的依赖项,其版本设置如下:[1.0.0,)

从 B 开始有两个版本:1.0.0-1 和 1.0.0-2。 1.0.0-1 已过时,它缺少一些依赖项,因此我无法从中创建构建。但是 1.0.0-2 工作正常。

当我对模块 A 使用安装时,我收到 B:1.0.0-1 缺少依赖项的错误。

这是因为 maven 从 1.0.0 下载了所有版本,而不仅仅是最后一个。

如果我使用 LATEST,那么只会下载 1.0.0-2,但这不是我想要的。基本上我想从 1.0.0 下载最新的。

我该怎么做?

感谢您的回答!

(Maven 版本:3.5.0)

【问题讨论】:

  • 你能发布完整的 pom 文件吗?

标签: maven maven-3


【解决方案1】:

首先不要使用版本范围,因为它们会使您的构建不可重现。如果您想更新类似的东西,您可以使用versions-maven-plugin 来更新依赖项。除此之外,1.0.0-11.0.0-2 之间有什么区别。从您的解释中,我假设您应该更改版本架构,因为第二个与第一个不兼容,所以我会说2.0.0 而不是@ 987654324@..or 将其视为比1.0.1...(以下semver)的错误修复。另一点LATEST 被标记为已弃用很长时间,并将在下一个 Maven 版本中产生警告..

向您解释:我怀疑所有工件都在下载...如果您查看日志输出,我假设有一些行说...maven-metadata.xml 将被下载...

答案的第一部分...

【讨论】:

    猜你喜欢
    • 2021-12-02
    • 2013-01-04
    • 1970-01-01
    • 2019-02-23
    • 2013-04-08
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 2014-07-23
    相关资源
    最近更新 更多