org.apache.maven.BuildFailureException:未提供任何SCM URL来执行发布

Dar*_*Var 13 maven maven-release-plugin

我正在使用maven 2.2.1并成功运行:

mvn -B release:clean release:prepare
Run Code Online (Sandbox Code Playgroud)

但是当我运行时,收到错误消息" 没有提供SCM URL来执行发布 ":

mvn release:perform
Run Code Online (Sandbox Code Playgroud)

我的pom.xml正确定义了scm标记:

<scm>
    <url>file:///C:/tmp/svnrepo/myproj/trunk</url>        
    <connection>scm:svn:file:///C:/tmp/svnrepo/myproj/trunk</connection>
    <developerConnection>scm:svn:file:///C:/tmp/svnrepo/myproj/trunk</developerConnection>        
</scm>
Run Code Online (Sandbox Code Playgroud)

Dar*_*Var 7

看起来我做了一个mvn -DdryRun=true release:perform,这已经从准备阶段删除了release.properties文件.

所以我将-DconnectionUrl添加到命令中以提供标记的url


Jmi*_*ini 7

可以release:perform通过release.properties在根文件夹中创建手动编辑的文件来重新运行maven .该文件应定义这两个属性:scm.urlscm.tag.这是一个可能的例子:

scm.url=scm:git:https://github.com/owner/repo.git
scm.tag=v1.0.4
Run Code Online (Sandbox Code Playgroud)

使用此文件可以重做release:perform任务.

灵感来自这个答案.


小智 6

它应该工作。我遇到了类似的问题,但在我的情况下,由于网络错误,执行失败,我不得不使用以下内容重新启动它:

mvn release:perform -rf :{ARTIFACT ON WHICH IT FAILED} -DconnectionUrl=scm:svn:{URL TO TAG}
Run Code Online (Sandbox Code Playgroud)