maven发布插件挂起

Posted

技术标签:

【中文标题】maven发布插件挂起【英文标题】:maven release plugin hanging 【发布时间】:2013-02-15 15:45:23 【问题描述】:

我正在尝试使用 mvn 发布插件发布 CVS 项目。

我已经成功使用 mvn release:prepare 但是当我运行 release:perform 时它挂起,因为 CVS 模块上似乎是一个前导斜杠

/cust/shared_code

[INFO] [release:perform execution: default-cli]
[INFO] Checking out the project to perform the release ...
[INFO] Executing: /bin/sh -c cd /home/jmorgan/cvs_src/HEAD/cust-repo/cust/shared_code/target && cvs -z3 -f -d :pserver:jmorgan@pserver:/cvsroot-cust -q checkout -r cust-shared_code-8_0_4 -d checkout /cust/shared_code
[INFO] Working directory: /home/jmorgan/cvs_src/HEAD/cust-repo/cust/shared_code/target

这挂了...

删除斜线

/bin/sh -c cd /home/jmorgan/cvs_src/HEAD/cust-repo/cust/shared_code/target && cvs -z3 -f -d :pserver:jmorgan@pserver:/cvsroot-cust -q checkout -r cust-shared_code-8_0_4 -d checkout cust/shared_code
U checkout/acct-dcash-xml
U checkout/acct-dcash
U checkout/acct_qry
U checkout/acct_totals
...

按照我的预期开始检查

我的 maven-scm-plugin v1.8.1 设置是

<scm>
<connection>scm:cvs:pserver:$env.USER:$password@pserver:/cvsroot-cust:cust/shared_code</connection>
<developerConnection>scm:cvs:pserver:$env.USER:$password@pserver:/cvsroot-cust:cust/shared_code</developerConnection>
</scm>

 <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-plugin</artifactId>
            <configuration>
                <providerImplementations>
                    <cvs>cvs_native</cvs>
                </providerImplementations>
            </configuration>
        </plugin>

看起来它与http://jira.codehaus.org/browse/SCM-216 相关,尽管这显然已在 1.0-beta-4 中修复

任何帮助将不胜感激

詹姆斯

---- 更新

看来我的 release.properties 不正确

#release configuration
#Fri Feb 15 14:58:18 GMT 2013
project.dev.com.cust.shared\:cust-shared_code=8.0.5-SNAPSHOT
scm.tag=cust-shared_code-8_0_4
scm.url=scm\:cvs\:pserver\:jmorgan\:$password@pserver\:/cvsroot-cust\:/cust/shared_code
preparationGoals=clean verify
project.rel.com.cust.shared\:cust-shared_code=8.0.4
scm.commentPrefix=[maven-release-plugin]
project.scm.com.cust.shared\:cust-shared_code.tag=HEAD
project.scm.com.cust.shared\:cust-shared_code.developerConnection=scm\:cvs\:pserver\:builder\:$password@pserver\:/cvsroot-cust\:/cust/shared_code
project.scm.com.cust.shared\:cust-shared_code.connection=scm\:cvs\:pserver\:builder\:$password@pserver\:/cvsroot-cust\:cust/shared_code
exec.additionalArguments=-P artifactory
completedPhase=end-release

虽然不确定如何纠正这个问题

【问题讨论】:

您的本地存储库中的 maven-scm-provider-cvs 版本是什么?他们修复问题的版本似乎不在 maven Central 中,因此您可能会使用损坏的版本 您好,感谢您回复我。我有 v1.8 ./org/apache/maven/scm/maven-scm-providers-cvs/1.8/maven-scm-providers-cvs-1.8.pom 我想我可能会有所收获。我已将 maven-release-plugin 版本更改为 2.4,并在调用 release:prepare/perform 时使用 mvn release:prepare -Dmaven.scm.provider.cvs.implementation=cvs_native。它现在允许我执行,尽管它似乎只是将快照发布到工件。我要去玩,看看发生了什么。非常感谢您的宝贵时间。 【参考方案1】:

正如我在上一条评论中提到的,我通过更新所有插件的最新版本解决了这个问题。 maven-release-plugin v2.4 和 maven-scm-provider-cvs v1.8

【讨论】:

以上是关于maven发布插件挂起的主要内容,如果未能解决你的问题,请参考以下文章

尝试与 Bamboo 一起运行时,Selenium 测试挂起

Maven发布插件和scm插件配置

gradle-release 插件 + maven 发布插件

Maven 发布插件:使用 SNAPSHOT 版本发布

用于 Maven 发布等功能的 Gradle 发布插件

我可以在 maven-release 插件之后运行自定义 maven 插件吗?