使用maven-release-plugin更新版本

时间:2013-02-11 08:46:06

标签: maven jenkins maven-release-plugin

我正在使用maven 3.0.4与cvs和jenkins结合使用。

我有一个带有主pom和一些模块的多模块项目。

对于正确的版本控制,我在jenkins中设置了一些环境变量。

第一步是我在jenkins中有一个执行maven目标的预构建步骤:

--batch-mode release:update-versions -DdevelopmentVersion=${ACTUAL_VERSION}${BUILD_NUMBER}-SNAPSHOT

现在maven正在更新我父pom的版本以及从模块到父pom的连接。这一切都运行正常,但我有一些内部依赖关系模块之间没有更新。我怎么能强迫maven更新它们呢?

示例:

- 父     - Module1     - Module2

在模块2中,存在对module1的依赖性,例如

<dependency>
    <groupId>xyz</groupId>
    <artifactId>module2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</dependency>

发布后:更新版本的父pom和模块已更新,但依赖项现在仍然引用旧版本。有没有办法更新这个依赖版本?

1 个答案:

答案 0 :(得分:7)

最简单和最好的解决方案(在我看来)是使用:

<dependency>
    <groupId>xyz</groupId>
    <artifactId>module2</artifactId>
    <version>${project.version}</version>
</dependency>

而不是硬编码版本。也可以使用以下内容:

<dependency>
    <groupId>${project.groupId}</groupId>
    <artifactId>module2</artifactId>
    <version>${project.version}</version>
</dependency>