如何使用 Maven 发布不同版本号的子模块?

Posted

技术标签:

【中文标题】如何使用 Maven 发布不同版本号的子模块?【英文标题】:How to release submodules with different version numbers with Maven? 【发布时间】:2013-08-20 07:39:03 【问题描述】:

在我当前的 maven 项目中,我有很多子模块。我需要构建一个版本并将其部署到我的关系...

现在我面临着一些不同版本号的模块需要的挑战。如何通过使用发布和部署插件来处理这个问题?还是我需要一些其他的maven插件???我在 parant pom.xml 中配置了发布插件。是否有可能禁用某些子模块的“autoVersionSubmodules”?有什么想法???

【问题讨论】:

以前发生过吗?还是第一次为不同的模块提供不同的版本? 是的,但最初发布/构建过程是通过 shell 脚本完成的。现在我想改变发布流程。 【参考方案1】:

如果您有一个多模块构建,那么所有模块都应该具有相同的版本号,否则这表明多模块构建不是正确的选择。

【讨论】:

该项目由大量的mudule组成,这些mudule在4个组件中使用/组合。每个程序集都应该有自己的版本。我应该为每个程序集执行发布过程吗?如何发布不同版本的不同组件? 我建议将这些程序集提取到另一个项目中,这样可以解决问题。 我已经有一个程序集项目,其中包含 4 个程序集中的每一个的 ressource 文件夹和 pom.xml。每个文件夹都包含程序集描述符 XML 文件。我不确定如何发布程序集?我应该为每个程序集调用“mvn release:prepare”吗?

以上是关于如何使用 Maven 发布不同版本号的子模块?的主要内容,如果未能解决你的问题,请参考以下文章

如何从不同的子模块导入一个子模块? [复制]

Tycho 的 Maven 多模块中的自定义 pom.xml 文件名

用于版本号的 npm package.json 配置变量

在 Maven 中,如何在版本中命名战争文件与在快照构建中不同

maven警告:使用同一工件的两种不同类型的依赖项时重复版本

探寻不同版本号的SDK对iOS程序的影响