如何使用versions-maven-plugin更新非模块的父级?

Posted

技术标签:

【中文标题】如何使用versions-maven-plugin更新非模块的父级?【英文标题】:How can I update the parent of a non-module with versions-maven-plugin? 【发布时间】:2013-06-14 14:52:56 【问题描述】:

我有一个项目 x 有几个模块,像往常一样在 Maven 中,x-apix-impl 等。

为了保持一致,还有一个目录x-ear,其中包含将部署在App Server 中的EAR 项目。它不是x POM 中的<modules> 的一部分,因为它不应该参与正常的反应堆构建。但是,它确实有相同的父 x

我们的版本是在versions-maven-plugin 的帮助下完成的。具体来说,我们使用

创建一个新的 SNAPSHOT

mvn 版本:设置 -DnewVersion=1.2.0-SNAPSHOT -DgenerateBackupPoms=false

项目及其模块一切正常(请注意,模块没有自己的版本,它们从项目父级继承)。

当然,x-ear 没有更新,因为它不是反应堆构建的一部分。

我尝试在目录中使用cd 并使用versions.setversions:update-parent,但它们不起作用。

有谁知道魔法命令? :-)

【问题讨论】:

如果你cd进入目录并执行mvn versions:set会发生什么?据我了解,这应该可行。 x-ear 模块不是反应堆的一部分听起来很奇怪?存在什么原因?你想达到什么目标?你想让你的生活变得轻松吗?只需将其放入模块列表中即可。 versions:update-parent 一直为我工作。如果要获取最新的快照,则需要在命令行中添加-DallowSnapshots=true @AndrewLogvinov:由于 EAR 没有自己的版本(它从父级继承),我得到 [ERROR] Failed to execute goal org.codehaus.mojo:versions-maven-plugin:2.0:set (default-cli) on project payment-ear: Project version is inherited from parent. -> [Help 1] @user944849:它在反应堆构建中不起作用,因为尚未在 repo 中安装父级。我试过mvn versions:update-parent -DallowSnapshots=true -DparentVersion=1.5.0-SNAPSHOT -DgenerateBackupPoms=false,但我得到了结果[INFO] Current version of xyz:x:pom:1.3.0-SNAPSHOT is the latest. 【参考方案1】:

感谢 khmarbaise 给了我明确的答案:只需将 EAR 作为一个普通模块包含在项目中即可。

【讨论】:

以上是关于如何使用versions-maven-plugin更新非模块的父级?的主要内容,如果未能解决你的问题,请参考以下文章

maven pom里version是用变量方式写的,deploy时怎么变成实际的值

版本-maven-plugin:update-property 不更新 pom.xml

[精选] Mysql分表与分库如何拆分,如何设计,如何使用

如果加入条件,我该如何解决。如果使用字符串连接,我如何使用

如何使用本机反应创建登录以及如何验证会话

如何在自动布局中使用约束标识符以及如何使用标识符更改约束? [迅速]