如何引导Maven版本插件?

时间:2017-05-23 05:42:45

标签: maven version

我们的项目X具有依赖关系Y.我们希望使用Maven版本插件将Y更新为最新的可用版本。

当Y的版本设置且有效时(例如:到2),我们没有问题。

<dependency>
    <groupId>group</groupId>
    <artifactId>Y</artifactId>
    <version>2</version>
</dependency>

我们运行mvn versions:use-latest-versions并更新Y的版本(例如:到3)。

<dependency>
    <groupId>group</groupId>
    <artifactId>Y</artifactId>
    <version>3</version>
</dependency>

但是我们不确定如何引导该过程。最初我们不知道什么是Y的有效版本。如果我们指定了无效版本(例如:12345),我们会收到以下错误。

[ERROR] [ERROR] Some problems were encountered while processing the POMs:
[ERROR] Non-resolvable import POM: Could not find artifact group:Y:pom:12345 in <repo> (<http://repo-url/path>)

这是一个真正的问题。我们从另一个团队收到Y.他们提供工件的Maven存储库包含最新的10个版本(例如:132-142)。

我们可以手动引导该过程,但它不会随着我们实践中的数十个依赖项而扩展。

潜在解决方案

我们无法实施任何这些解决方案。它们按优先顺序列出。有什么想法吗?

  • 有没有办法运行版本插件而不从pom.xml下载任何依赖项?
  • 有没有办法阅读最新版本的依赖项(版本插件,其他插件)。然后我们可以更新Maven之外的pom.xml。
  • 还有别的吗?

1 个答案:

答案 0 :(得分:1)

如果您使用Maven,消失的版本是一个问题,因为通常认为不会删除已发布的版本(构建稳定性)。

如果您对团队Y没有影响删除旧文物的工件Y,您应该考虑在其间使用Nexus / Artifactory作为代理。在那里,您可以保留您用于构建的所有版本,这样就不会遇到问题中描述的问题。