java - 更新多模块 Maven 项目中模块的版本号

标签 java maven

我有一个多模块 Maven 项目。我们打算将所有这些模块一起版本化。但截至目前,我最终在每个模块 pom.xml 中进行硬编码版本,如下所示

<parent>
    <artifactId>xyz-application</artifactId>
    <groupId>com.xyz</groupId>
    <version>2.50.0.g</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.xyz</groupId>
<artifactId>xyz-Library</artifactId>
<version>2.50.0.g</version>

主要父模块具有以下配置

<modelVersion>4.0.0</modelVersion>
<groupId>com.xyz</groupId>
<artifactId>xyz-application</artifactId>
<version>2.50.0.g</version>
<packaging>pom</packaging>

最佳答案

使用versions:set来自versions-maven plugin :

mvn versions:set -DnewVersion=2.50.1-SNAPSHOT

它将调整多模块项目中的所有 pom 版本、父版本和依赖版本。

如果你犯了错误,请这样做

mvn versions:revert

之后,或者

mvn versions:commit

如果您对结果感到满意。

<小时/>

注意:此解决方案假设所有模块都使用聚合 pom 作为父 pom,这是在本答案时被认为是标准的场景。如果不是这种情况,请访问 Garret Wilson's answer .

关于java - 更新多模块 Maven 项目中模块的版本号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5726291/

相关文章:

android - 将 Android 库项目添加到 Eclipse 构建路径?

java - 如何排除 Maven 程序集中的资源文件?

java - 次要垃圾收集时间过长

java - 找不到 "librealm-jni.so"

java - 当根项目不包含任何类时,Sonar/findbugs 失败

java - 错误 : java. lang.NoSuchMethodError : org/springframework/asm/ClassVisitor. <init>(I)V

maven-2 - 如何在父模块中提供站点资源供所有子模块使用?

java - 在 Java 中是否有并行调用多个函数的简写方式?

java - Hibernate 抛出 "More than one row with the given identifier was found"一次,但此后不再抛出

java - 如何管理用户输入字母而不是数字?