我已将以下 scm 标签添加到我的主 pom 中:
<scm>
<developerConnection>
scm:svn:http://<server>/svn/<svnpath>/${project.artifactId}/trunk
</developerConnection>
</scm>
我认为这很整洁。所有挂在master上的项目都采用路径策略。
当我来做一个发布时:准备虽然在一个子项目上它失败了。
子 POM 最终会添加一个 scm 标签,格式如下:
<scm>
<developerConnection>
scm:svn:http://<server>/svn/<svnpath>/<artifact>/tags/v1.0.0
</developerConnection>
</scm>
随后的 svn 命令行尝试从标签中添加标签并失败:
[INFO] Executing: cmd.exe /X /C "svn --non-interactive copy --file C:\DOCUME~1\<me>\LOCALS~1\Temp\maven-scm-1302559010.commit http://<server>/svn/<svnpath>/<artifact>/tags/v1.0.0 http://<server>/svn/<svnpath>/<artifact>/tags/v1.0.0"
Q1。这是 maven 版本的错误吗?Q2。如果它不是错误,我是否不允许像我所做的那样在 master 中定义 scm 标签?
对子项中的 scm 标签进行硬编码实际上可以修复它,但由于我们有很多子项目,如果可能的话,我更愿意在主 pom 中定义它。