我在Win x64上使用带有嵌入式Maven的NetBeans 8.0.2。发布插件的版本是2.5.3。到目前为止,我使用SVN作为scm并部署运行没有问题。现在我切换到git并在发布时遇到问题:准备。
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 8.248s
[INFO] Finished at: Mon Nov 16 16:47:33 CET 2015
[INFO] Final Memory: 28M/273M
[INFO] ------------------------------------------------------------------------
Checking in modified POMs...
Executing: cmd.exe /X /C "git add -- pom.xml"
Working directory: C:\Data\dev\Workspace\NetBeans\myGitProj\scm_12_0004
Executing: cmd.exe /X /C "git status"
Working directory: C:\Data\dev\Workspace\NetBeans\myGitProj\scm_12_0004
Executing: cmd.exe /X /C "git commit --verbose -F C:\Users\RD3\AppData\Local\Temp\maven-scm-1552536175.commit pom.xml"
Working directory: C:\Data\dev\Workspace\NetBeans\myGitProj\scm_12_0004
Executing: cmd.exe /X /C "git symbolic-ref HEAD"
Working directory: C:\Data\dev\Workspace\NetBeans\myGitProj\scm_12_0004
Executing: cmd.exe /X /C "git push https://172.16.40.5/redmine/projekte/12_0004/scm_12_0004.git master:master"
Working directory: C:\Data\dev\Workspace\NetBeans\myGitProj\scm_12_0004
运行目标版本后:准备插件在推送点永远挂起。只能通过https访问远程git存储库。
我的错误是什么?
祝你好运
答案 0 :(得分:0)
使用某种类型的详细标记调用release:prepare
,以便记录更多信息,然后分析它挂起的位置
答案 1 :(得分:0)
我遇到了同样的问题。经过多次测试后,我意识到问题发生在“git push”正在执行时,由于没有访问GIT服务器的凭据而无法进行身份验证。 在我的情况下,我通常通过VPN工作;我公司的GIT服务器有一些凭据,我的计算机有另一个凭据,而Artifactory的服务器也有另外的凭据。因此,在我的情况下,设置Maven发布插件GIT凭据解决了我的问题。
我在pom.xml上使用maven-release-plugin和SCM配置
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.3</version>
</plugin>
<scm>
<developerConnection>scm:git:http://url.gitserver.com/system/_git/project_name</developerConnection>
<tag>HEAD</tag>
</scm>
所以我需要设置以下步骤:
将属性ID添加到pom.xml:
<properties>
<project.scm.id>git</project.scm.id>
</properties>
将ID的引用添加到Settings.xml
<server>
<id>git</id>
<username>myUser</username>
<password>myPassword</password>
</server>
另一种解决方案甚至比前两个步骤更简单;您可以使用Id标记中的GIT Url地址仅将您的凭据指定给Maven settings.xml,例如:
<server>
<id>url.gitserver.com</id>
<username>user</username>
<password>password</password>
</server>