我有一个多模块 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
我的预期结果是:
- 每个模块的 POM 的父级都更新为最新发布的版本。
- 对每个 POM 的更改将签入到模块的 POM 中指定的 SVN 路径中。例如
project1
POM 使用路径签入,使用project1
<scm>/<developerConnection>
路径project2
签入project2
等。
实际结果:
- 每个模块的 POM 的父级更新到最新发布的版本。这按预期工作。
- 只有多模块 POM 被签入到 SVN,没有一个模块 POM 被签入。这就是问题所在。
有没有办法实现上述预期结果,或者这是 SCM 插件根本没有设计做的事情?如果可能的话,我将如何修改我所拥有的以获得我想要的结果?
注意:我不能更改项目结构 - 我不能将模块放在父项目中,它们必须保持独立。
不确定它是否相关,但我使用的是 Maven 3.3.9。