2011-04-14 151 views
4

我正在使用Maven 3.0.3,Maven/SCM插件(1.5)和Git 1.7.4.1。我想运行一个maven命令来检查git的修订版,但该插件正在处理我的“scmVersion”参数,如分支名称而不是修订版号。因此,例如,如果我配置了Maven-scm插件:为什么scmRevision无法按预期工作?

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-scm-plugin</artifactId> 
    <version>1.5</version> 
    <configuration> 
     <goals>install</goals> 
     <username>username</username> 
     <password>password</password> 
     <scmVersion>ccaa6881dd1a9312ad44e39eea719f33ec3e8124</scmVersion> 
     <scmVersionType>revision</scmVersionType> 
    </configuration> 
    </plugin> 

(其中我已验证上述内容是有效的修订版),我会在下面看到以下错误消息。但是,如果我将“scmVersion”更改为分支名称,则一切正常。如何配置插件以从版本中检出?谢谢, - 戴夫

davea-mbp2:socialmediaproxy davea$ mvn scm:checkout 
[INFO] Scanning for projects... 
[INFO]                   
[INFO] ------------------------------------------------------------------------ 
[INFO] Building socialmediaproxy 0.1 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- maven-scm-plugin:1.5:checkout (default-cli) @ socialmediaproxy --- 
[INFO] Removing /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target/checkout 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD FAILURE 
[INFO] ------------------------------------------------------------------------ 
… 
[INFO] --- maven-scm-plugin:1.5:checkout (default-cli) @ socialmediaproxy --- 
[INFO] Removing /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target/checkout 
[INFO] Executing: /bin/sh -c cd /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target && git clone http://maven:[email protected]/socialmediaproxy.git /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target/checkout 
[INFO] Working directory: /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target 
[INFO] Executing: /bin/sh -c cd /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target/checkout && git pull http://maven:[email protected]/socialmediaproxy.gitccaa6881dd1a9312ad44e39eea719f33ec3e8124:ccaa6881dd1a9312ad44e39eea719f33ec3e8124 
[INFO] Working directory: /Users/davea/Documents/workspace-sts-2.6.0.SR1/socialmediaproxy/target/checkout 
[ERROR] Provider message: 
[ERROR] The git-pull command failed. 
[ERROR] Command output: 
[ERROR] fatal: Couldn't find remote ref ccaa6881dd1a9312ad44e39eea719f33ec3e8124 

回答

0

这可能与单片机连接问题,试图明确设置connectionType这样的:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-scm-plugin</artifactId> 
    <version>1.5</version> 
    <configuration> 
     <connectionType>developerConnection</connectionType> 
    </configuration> 
    </plugin> 

您可以验证是否在POM URL连接使用命令
mvn scm:validate

是有效的

如上所述here

mvn -DscmConnection="<scm url>" -DscmDeveloperConnection="<scm url>" scm:validate

+0

感谢您的这些建议。 “mvn scm:validate”命令成功,但问题不再是连接URL,而是当我在“revision”元素中指定修订版本时,插件将该解释为分支名称,而不是我想要的。 – Dave 2011-04-19 17:05:19

相关问题