我们使用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
命令?
答案 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>
。如果你正常工作,请告诉我们!