我有点困惑,因为在我开发过程中我遇到的问题只能通过将maven发布插件从2.2.1降级到2.0-beta-9来解决。
基本上我的项目是在github上使用git,所以我在pom中的scm条目就像
scm:git:git@github.com/<username>/<projectname>.git
正在运行发布:准备始终失败,因为在标记此命令时使用了:
git push git@github.com/<username> <tagname>
如您所见,项目名称已被忽略。
我在网上看了一眼,最后我找到了this link:
该示例使用的是版本2.0-beta-9,它有一个很大的区别,而不是使用git url它只是使用了原点!
git push origin <tagname>
原点一切都有效。
不幸的是,我发现发布插件的标签/属性总是使用origin而不是it@github.com /
有趣的是:在标记推送修改后的poms之前(多模块项目)。并且使用了正确的URL。
编辑:基本上版本2.2.1正好使用scm url而不是“origin”,但标记操作不能从url中删除项目名称。
此致
答案 0 :(得分:0)
我与Maven 2.2.1和git有一些类似的URL相关问题。尝试使用git URL的一些变体,比如使用':'而不是'/'作为用户名和项目名之间的分隔符。
更新:使用Maven 2.2.1,我看到了你所描述的推送到原点:
git push origin <tagname>
我的SCM网址是:
<scm>
<developerConnection>scm:git|ssh://git@github.com/zzantozz/testbed.git</developerConnection>
</scm>
根据mvn help:effective-pom
,我的发布插件是:
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.0</version>
</plugin>
这是:
$ mvn -version
Apache Maven 2.2.1 (r801777; 2009-08-06 14:16:01-0500)
Java version: 1.6.0_26
Java home: /home/ryan/dev/tools/jdk1.6.0_26/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux" version: "2.6.35-30-generic" arch: "amd64" Family: "unix"
enter code here