【问题标题】:Maven Release Plugin throws svn : '' is not a working copyMaven 发布插件抛出 svn : '' 不是工作副本
【发布时间】:2014-03-06 13:47:13
【问题描述】:

我有一个 mavenized 项目,当我尝试发布时,我收到以下错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4
.2:prepare (default-cli) on project SimpleWeb: Unable to check for local modific
ations
[ERROR] Provider message:
[ERROR] SVN status failed.
[ERROR] Command output:
[ERROR] svn: '' is not a working copy

我有以下问题:

  1. scm 配置是如何在 POM 文件中给出的
  2. 如果与 scm 的通信应该通过 https 进行,我们如何在客户端配置证书
  3. 应该从分支或主干发布

我的scm配置如下:

<scm>
    <connection>scm:svn:https://domain.com/svn/New_FW/CI_POC/SimpleWeb/trunk</connection>
    <developerConnection>scm:svn:https://domain.com/svn/New_FW/CI_POC/SimpleWeb/trunk</developerConnection>
    <url>https://domain.com/svn/New_FW/CI_POC/SimpleWeb/trunk</url>
</scm>

我的maven发布插件配置如下:

<plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-scm-plugin</artifactId>
      <version>1.3</version>
      <configuration>
        <providerImplementations>
          <svn>javasvn</svn>
        </providerImplementations>
        <username>${scm.username}</username>                            
        <password>${scm.password}</password>
      </configuration>
      <dependencies>
        <dependency>
          <groupId>com.google.code.maven-scm-provider-svnjava</groupId>
          <artifactId>maven-scm-provider-svnjava</artifactId>
          <version>1.14</version>
        </dependency>
      </dependencies>
</plugin>            
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <version>2.4.2</version>
    <dependencies>
        <dependency>    
        <groupId>com.google.code.maven-scm-provider-svnjava</groupId>
        <artifactId>maven-scm-provider-svnjava</artifactId>
        <version>1.6</version>
        </dependency>
    </dependencies>
    <configuration>
        <providerImplementations>
            <svn>javasvn</svn>
        </providerImplementations>
        <tagBase>https://domain-inc.com/svn/New_FW/CI_POC/SimpleWeb/tags</tagBase>
        <mavenExecutorId>forked-path</mavenExecutorId>
    </configuration>
</plugin>

我被击中了,无法继续前进。请帮助/指导我解决问题。当我通过在 Jenkins 中配置 Maven 发布插件运行相同的操作时,我得到一个不同的错误:“svn:需要身份验证”。为什么会有这种差异。

【问题讨论】:

  • 这是工作副本吗?我的意思是项目是在你从 subversion 下载时创建的。

标签: jenkins maven-3 jenkins-plugins maven-release-plugin maven-scm-plugin


【解决方案1】:

在 Windows Jenkins slave 上,我对多 maven 项目有同样的问题。 为了修复它,我添加了:

...
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    ...
    <configuration>
        <commitByProject>true</commitByProject>
        ...
    </configuration>
...

【讨论】:

    猜你喜欢
    • 2011-05-12
    • 1970-01-01
    • 1970-01-01
    • 2011-08-17
    • 2010-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多