maven使用提交消息将jar部署到svn

时间:2013-01-24 09:04:45

标签: svn maven maven-deploy-plugin

我们使用SVN管理的maven repo。我构建了一个jar newUtil-1.0.jar,我需要将它部署到远程仓库。我使用以下命令,导致构建失败。

  

mvn deploy:deploy-file -Dfile=/tmp/newUtil-1.0.jar -DgroupId=com.tareque.utils -DartifactId=newUtil -Dversion=1.0 -Dpackaging=jar -DrepositoryId=myrepo -Durl=https://<my-repo-url>

检查服务器端的日志svn会显示此消息

  

[Fri Jan 18 11:35:47 2013] [error] [client 169.124.140.200]提交被预先提交挂钩(退出代码1)阻止,输出:\ n不允许使用注释。

似乎阻止了带有空消息/注释的提交。

那么,如何将提交消息的注释传递给上面的maven deploy命令?

1 个答案:

答案 0 :(得分:2)

请勿使用部署,请使用maven-release-plugin。在这种情况下设置提交消息很简单:

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-release-plugin</artifactId>
      <configuration>
        <scmCommentPrefix>re #123:</scmCommentPrefix>
      </configuration>
    </plugin>  ......

您必须首先搜索一下您需要使用发布插件所需的其他设置(<scm><distributionManagement>标记,以便开始)但是一旦您拥有{ {1}}工作,这个额外的配置设置将允许您修改提交消息。

相信我,一旦你正确使用发布插件,你就不会想要回到手动版本。

ETA:如果您实际上正在尝试将快照部署到SVN(这似乎有点疯狂,而且我从未见过它,但它应该可行)您需要调查using wagon-scm这样mvn release:prepare release:perform部分会使用<distributionManagement>。如果你正常工作,请告诉我们!