与GitHub一起使用maven发布插件;你可以';不要勉强git://github.com/..."
最近,我将一个项目的源代码存储库从SourceForge切换到GitHub,我需要更新maven发布过程以匹配它。我遵循了配置pom的“scm”部分的步骤。GitHub存储库是。其他一切都与使用SVN(用于发布到)时一样。然后我调用与GitHub一起使用maven发布插件;你可以';不要勉强git://github.com/...",maven,github,maven-release-plugin,sonatype,maven-scm,Maven,Github,Maven Release Plugin,Sonatype,Maven Scm,最近,我将一个项目的源代码存储库从SourceForge切换到GitHub,我需要更新maven发布过程以匹配它。我遵循了配置pom的“scm”部分的步骤。GitHub存储库是。其他一切都与使用SVN(用于发布到)时一样。然后我调用 mvn clean release:clean release:prepare release:perform 输出结果如下 [INFO] --- maven-release-plugin:2.1:prepare (default-cli) @ datanucle
mvn clean release:clean release:prepare release:perform
输出结果如下
[INFO] --- maven-release-plugin:2.1:prepare (default-cli) @ datanucleus-maven-parent ---
[INFO] Verifying that there are no local modifications...
[INFO] ignoring changes on: pom.xml.next, release.properties, pom.xml.releaseBackup, pom.xml.backup, pom.xml.branch, pom.xml.tag
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && git status
[INFO] Working directory: /home/andy/work/datanucleus/datanucleus-maven-parent
[INFO] Checking dependencies and plugins for snapshots ...
What is the release version for "DataNucleus Maven parent project"? (org.datanucleus:datanucleus-maven-parent) 3.3: :
What is SCM release tag or label for "DataNucleus Maven parent project"? (org.datanucleus:datanucleus-maven-parent) datanucleus-maven-parent-3.3: :
What is the new development version for "DataNucleus Maven parent project"? (org.datanucleus:datanucleus-maven-parent) 3.4-SNAPSHOT: :
[INFO] Transforming 'DataNucleus Maven parent project'...
[INFO] Not generating release POMs
[INFO] Executing goals 'clean verify'...
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && /usr/local/maven3/bin/mvn clean verify --no-plugin-updates -Psonatype-oss-release -P development
[WARNING] Command line option -npu is deprecated and will be removed in future Maven versions.
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building DataNucleus Maven parent project 3.3
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ datanucleus-maven-parent ---
[INFO] Deleting /home/andy/work/datanucleus/datanucleus-maven-parent (includes = [*.log], excludes = [])
[INFO]
[INFO] --- maven-enforcer-plugin:1.0:enforce (enforce-maven) @ datanucleus-maven-parent ---
[INFO]
[INFO] --- maven-bundle-plugin:2.4.0:manifest (default) @ datanucleus-maven-parent ---
[WARNING] Ignoring project type pom - supportedProjectTypes = [jar, bundle]
[INFO]
[INFO] --- maven-source-plugin:2.1.2:jar-no-fork (attach-sources) @ datanucleus-maven-parent ---
[INFO]
[INFO] --- maven-javadoc-plugin:2.7:jar (attach-javadocs) @ datanucleus-maven-parent ---
[INFO] Not executing Javadoc as the project is not a Java classpath-capable package
[INFO]
[INFO] --- maven-gpg-plugin:1.1:sign (sign-artifacts) @ datanucleus-maven-parent ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 1.535s
[INFO] Finished at: Sat Dec 14 08:51:07 GMT 2013
[INFO] Final Memory: 14M/491M
[INFO] ------------------------------------------------------------------------
[INFO] Checking in modified POMs...
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && git add -- pom.xml
[INFO] Working directory: /home/andy/work/datanucleus/datanucleus-maven-parent
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && git status
[INFO] Working directory: /home/andy/work/datanucleus/datanucleus-maven-parent
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && git commit --verbose -F /tmp/maven-scm-1907822841.commit pom.xml
[INFO] Working directory: /home/andy/work/datanucleus/datanucleus-maven-parent
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && git symbolic-ref HEAD
[INFO] Working directory: /home/andy/work/datanucleus/datanucleus-maven-parent
[INFO] Executing: /bin/sh -c cd /home/andy/work/datanucleus/datanucleus-maven-parent && git push git://github.com/datanucleus/datanucleus-maven-parent.git master:master
[INFO] Working directory: /home/andy/work/datanucleus/datanucleus-maven-parent
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 6.885s
[INFO] Finished at: Sat Dec 14 08:51:07 GMT 2013
[INFO] Final Memory: 15M/491M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.1:prepare (default-cli) on project datanucleus-maven-parent: Unable to commit files
[ERROR] Provider message:
[ERROR] The git-push command failed.
[ERROR] Command output:
[ERROR] fatal: remote error:
[ERROR] You can't push to git://github.com/datanucleus/datanucleus-maven-parent.git
[ERROR] Use https://github.com/datanucleus/datanucleus-maven-parent.git
现在连接“scm:git:git://github.com/{organization}/{project}.git”是我在maven release plugin中看到的所有示例,因此,如果您能深入了解为什么它在这里不起作用,或者我可以看看什么来找出原因,我将不胜感激。我可以使用我在这里登录的用户(GitHub具有SSH密钥)将git推送到相同的URL
我尝试将scm连接/developerConnection切换到https,然后收到用户名/密码提示,然后挂起(它使用不带快照的版本更新GitHub repo),但仅此而已。实际上,问题更多的是相信应该如何配置scm部分的web链接,所以我把答案贴在这里,以防其他人点击这条消息。连接/developerConnection的形式应为
scm:git:git@github.com:{organization}/{project}.git
除此之外,我还建议使用最新的maven发布插件(2.4.2),而不是旧的版本(2.1)。是的,我同意,但在Sonatype父POM中为发布到Sonatype的所有项目指定了这一点(即使我可以覆盖它),这对我来说不起作用。推送失败,对话框显示“找不到支持的身份验证方法(服务器发送的公钥)。您能帮我解决此错误吗?它确实对我有效(我有https://版本)。@coding\u idiot,您是否将您的ssh公钥添加到github帐户?