在多个ServiceMix POM中更新Maven依赖项版本

时间:2017-05-25 08:47:21

标签: maven fuseesb apache-servicemix

我正在尝试自动更改将ServiceMix(FuseESB)作为集成模块的产品版本的过程。

使用Maven版本插件更改每个POM中的版本非常简单:

mvn versions:set -DnewVersion=NEW_VERSION -DgenerateBackupPoms=false

但是,我现在正在努力更新本产品其他模块的依赖项中的版本。特别是,在许多服务单元的POM文件中存在这样的依赖关系(其中OLD_VERSION是相同的,旧的版本号):

<dependencies>
  <dependency>
    <groupId>com.company.department.product.module1</groupId>
    <artifactId>artifact1</artifactId>
    <version>OLD_VERSION</version>
  </dependency>
  <dependency>
    <groupId>com.company.department.product.module1</groupId>
    <artifactId>artifact2</artifactId>
    <version>OLD_VERSION</version>
  </dependency>
  <dependency>
    <groupId>com.company.department.product.module2</groupId>
    <artifactId>artifact3</artifactId>
    <version>OLD_VERSION</version>
  </dependency>
</dependencies>

我想将这些依赖项中的版本号设置为“NEW_VERSION”。

你们有什么想法吗?

1 个答案:

答案 0 :(得分:0)

刚刚找到非常简单的解决方案 - 用$ {project.version}替换依赖项版本 - 对我有用,因为在我的项目中,依赖项与项目本身具有相同的版本(它们都是同一产品的工件)