首页 > 解决方案 > 在 Maven 中,如何使我的构建版本使用其依赖项之一的版本?

问题描述

我正在为外部依赖构建一个帮助库。如何使我的构建版本取自外部依赖项的版本?

  <groupId>com.foo</groupId>
  <artifactId>bar</artifactId>
  <version>???</version>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.external.dependency</groupId>
        <artifactId>bar</artifactId>
        <version>3.0.42</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

我希望我的库也构建为 3.0.42 以反映它是该外部依赖项的该版本(可能还有一些旧版本)的帮助程序。

标签: mavenjenkinsintellij-ideaversioningdependency-management

解决方案


您可以按照@Thorbjørn 的建议${project.version}在依赖标签中使用。

或者,您可以<revision>在 POM 的属性部分中定义一个属性(注意名称很重要,不要尝试其他属性名称)并将<version>项目和库中的${revision}.

第二种方法需要一个相当新的 Maven 版本(如 3.5.x 或 3.6.x)。


推荐阅读