无法执行 Maven 发布

Posted

技术标签:

【中文标题】无法执行 Maven 发布【英文标题】:Unable to Perform Maven Release 【发布时间】:2013-06-03 14:24:22 【问题描述】:

我正在尝试使用 Jenkins 进行 Maven 发布。但我有一些问题。这是我第一次做 Maven 发布。 Jenkins 从 Git 存储库中提取我的代码并将所有 pom 文件更改为正确的版本。我可以在检查 Jenkins 工作区时看到这一点。但是,随着版本的更改,它似乎并没有将更改推回 Git 存储库。 Git 使用了一个名为 Gerrit 的代码审查工具,一旦它执行 mvn 版本,我就必须批准它。

我在主 POM 中设置了 SCM <scm><developerConnection>scm:git:ssh://<user>@<IP_Address>:<Port>/<Repo_Name>.git</developerConnection></scm>

我遇到了一个错误

未能在项目 上执行目标 org.apache.maven.plugins:maven-release-plugin:2.0:prepare (default-cli):签入过程中发生错误:执行 SCM 命令时出现异常。 原因:签入过程中发生错误:执行SCM命令时出现异常。 堆栈跟踪:.....

有什么想法吗?

【问题讨论】:

你有更详细的东西要展示吗?您可以创建一个 Gist 或 pastebin 来为我们提供更多上下文。 这个有帮助吗pastebin.com/raw.php?i=Hr4meuUk 你还有同样的问题吗?我有同样的问题,我想知道如何解决 【参考方案1】:

感谢您的粘贴箱。

错误Caused by: org.apache.maven.scm.ScmException: Detecting the current branch failed: fatal: ref HEAD is not a symbolic ref 通常可以通过在Git 参数的Advanced... 部分中将Checkout/merge to local branch (optional) 设置为master(如果您要释放master)来欺骗。

【讨论】:

我如何告诉它创建一个新分支并推送到 Gerrit 和 Git 存储库? Maven release:prepare 和 release:perform 只会修改你当前发布的分支。如果你想创建一个新的分支,你可以添加一个构建步骤Execute shell 与几个 git 命令 (git checkout -b new-branch old-branch; git push gerrit new-branch;...)

以上是关于无法执行 Maven 发布的主要内容,如果未能解决你的问题,请参考以下文章

Maven Sonarqube 插件:无法执行 SonarQube:无法从服务器获取引导索引

未能执行目标... maven-install-plugin ... 无法安装工件...(访问被拒绝)

无法将 Groovy Maven 插件作为目标执行

AEM Maven 无法执行安装 com.day.jcr.vault:content-package-maven-plugin

Maven 不会运行我的项目:无法执行目标 org.codehaus.mojo:exec-maven-plugin:1.2.1:exec

将 Docker 部署到 AWS Elastic Beanstalk:无法执行命令“docker pull maven”