3

我有一个多模块 POM 文件:

...
<modules>
   <module>../project1</module>
   <module>../project2</module>
   <module>../project3</module>
   ...
</modules>
...

每个模块本身都是一个具有自己 POM 的 Maven 项目。在这些 POM 中的每一个中,我都有这样指定的scm标签developerConnection

<scm>
   <developerConnection>scm:svn:svn://hostname:port/path/to/trunk</developerConnection>
</scm>

我的目标是运行以下 Maven 目标/选项:

versions:update-parent versions:commit scm:checkin \
  -Dmessage="automated commit" -Dusername=user -Dpassword=pass

我的预期结果是:

  1. 每个模块的 POM 的父级都更新为最新发布的版本。
  2. 对每个 POM 的更改将签入到模块的 POM 中指定的 SVN 路径中。例如project1POM 使用路径签入,使用project1 <scm>/<developerConnection>路径project2签入project2等。

实际结果:

  1. 每个模块的 POM 的父级更新到最新发布的版本。这按预期工作。
  2. 只有多模块 POM 被签入到 SVN,没有一个模块 POM 被签入。这就是问题所在。

有没有办法实现上述预期结果,或者这是 SCM 插件根本没有设计做的事情?如果可能的话,我将如何修改我所拥有的以获得我想要的结果?

注意:我不能更改项目结构 - 我不能将模块放在父项目中,它们必须保持独立。

不确定它是否相关,但我使用的是 Maven 3.3.9。

4

0 回答 0