Maven发布时没有标记

时间:2013-05-28 13:16:41

标签: maven maven-release-plugin

问题的主要思想是:是指定maven版本在执行发布时应跳过标记的方法吗?

我有以下背景:我们有一个TFS(Team Fundation Server)作为我们软件版本的系统。我们还使用与TFS“对话”的svn桥,开发人员和CI工具使用它。当执行mvn release:clean release:prepare release:perform maven抱怨它无法找到或创建标记时(以某种方式将svn的tag命令转换为tfs崩溃中的类似命令)。任何建议都表示赞赏。

错误如下所示:

28-May-2013 15:51:04    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4.1:branch (default-cli) on project spring-hibernate-mysql: The scm url is invalid.
28-May-2013 15:51:04    [ERROR] - scm:svn:https://${TFS_SERVER}:${PORT}/${PATH_TO_APP}/tags/dbDiagnostic-1.0.0-RELEASE url isn't a valid svn URL.
28-May-2013 15:51:04    [ERROR] -> [Help 1]

我提到网址没问题,因为在此计划中,在CI计划中的步骤是具有相同网址的“checkout sources”步骤。

2 个答案:

答案 0 :(得分:1)

maven发布插件取决于svn标记,因为它在发布过程中检出标记的版本。所以答案是:不,没有标签就无法发布。

上面的svn网址无效,您应该考虑通过解析变量替换来修复它。

答案 1 :(得分:1)

问题:

您可以通过将 remoteTagging 属性设置为 false 来禁用远程标记,如下所述:http://maven.apache.org/maven-release/maven-release-plugin/prepare-mojo.html#remoteTagging

注意 与SVN一起使用。

然而,此错误的原因很可能是因为maven 在上一步骤中未能创建标记,原因在于身份验证失败或URL配置不正确(请参阅“标记库”属性&等)。