我的 pom.xml 文件中的 scm 标签有点问题。
我的项目架构是这样的:
Parent
Submodule1
Submodule2
reactor
Parent 是包含所有 maven 插件配置、库版本等的项目。它是 reactor 项目的父级,它是所有子模块的父级。
Reactor 是一个 pom.xml,其中包含编译所有子模块的标签。
我想将 scm 标签放在父 pom.xml 上,因为它是更高的 pom.xml。但是当我想做“mvn release:prepare”时出现错误。
所以我把 scm 标签放在反应器 pom.xml 中,它就可以工作了。
这对我有好处,它可以工作:) 但我不明白为什么我需要将 scm 标签放在 reactor pom.xml 中。
有人可以向我解释这种行为吗?
谢谢。
编辑:
这是文件夹结构:
root
parent
pom.xml (parent)
submodule1
pom.xml
submodule2
pom.xml
pom.xml (reactor)
这是 pom reactor 有趣的部分:
<parent>
<groupId>groupId</groupId>
<artifactId>parent</artifactId>
<relativePath>./parent/pom.xml</relativePath>
<version>1.0.2-SNAPSHOT</version>
</parent>
<modules>
<module>parent</module>
<module>submodule1</module>
<module>submodule2</module>
</modules>
最后,这是发布的错误:准备:
[INFO] 无法标记 SCM 提供程序消息:svn tag 命令失败。命令输出:svn:路径 'http://10.211.55.4/svn/trunk/reactor' 在版本 112 中不存在