在 maven-scm-publish-plugin 中使用备用 scm 提供程序
Using alternate scm provider in maven-scm-publish-plugin
我想使用 Maven 从远程 SVN 更新本地项目(没有安装 SVN 命令)
我正在尝试在 maven-scm-publish-plugin 中使用备用 scm 提供程序,示例插件配置如下所示:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-publish-plugin</artifactId>
<version>1.1</version>
<configuration>
<providerImplementations>
<svn>javasvn</svn>
</providerImplementations>
</configuration>
<dependencies>
<dependency>
<groupId>com.google.code.maven-scm-provider-svnjava</groupId>
<artifactId>maven-scm-provider-svnjava</artifactId>
<version>2.0.6</version>
</dependency>
<dependency>
<groupId>org.tmatesoft.svnkit</groupId>
<artifactId>svnkit</artifactId>
<version>1.7.11</version>
</dependency>
</dependencies>
</plugin>
来源:http://maven.apache.org/plugins/maven-scm-publish-plugin/various-tips.html
但是执行后 mvn scm:update
它在 Maven 日志中有
[INFO] --- maven-scm-plugin:1.9.5:update (default-cli) @ testscm ---
[INFO] Executing: /bin/sh -c cd /home/stanimir/ProjectSvnTest && svn --non-interactive update /home/stanimir/ProjectSvnTest
和错误:svn not found
- 我知道..它没有安装在系统上。我想改用 svnkit 但这个插件如何使用 javasvn?
我 运行 来自命令行的错误 Maven 插件 mvn scm:update
(没有配置)而不是 mvn scm-publish:update
最后我在 maven-scm-plugin 上取得了成功:
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<version>1.9.5</version>
<configuration>
<providerImplementations>
<svn>javasvn</svn>
</providerImplementations>
<connectionUrl>scm:svn:https://..</connectionUrl>
<username>user</username>
<password>XXX</password>
</configuration>
<dependencies>
<dependency>
<groupId>com.google.code.maven-scm-provider-svnjava</groupId>
<artifactId>maven-scm-provider-svnjava</artifactId>
<version>2.0.6</version>
</dependency>
<dependency>
<groupId>org.tmatesoft.svnkit</groupId>
<artifactId>svnkit</artifactId>
<version>1.7.11</version>
</dependency>
</dependencies>
</plugin>
要克隆 SVN 存储库:mvn -Djsse.enableSNIExtension=false scm:checkout
要更新它:mvn scm:update
[INFO] --- maven-scm-plugin:1.9.5:checkout (default-cli) @ testscm ---
[INFO] Change the default 'svn' provider implementation to 'javasvn'.
我想使用 Maven 从远程 SVN 更新本地项目(没有安装 SVN 命令) 我正在尝试在 maven-scm-publish-plugin 中使用备用 scm 提供程序,示例插件配置如下所示:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-publish-plugin</artifactId>
<version>1.1</version>
<configuration>
<providerImplementations>
<svn>javasvn</svn>
</providerImplementations>
</configuration>
<dependencies>
<dependency>
<groupId>com.google.code.maven-scm-provider-svnjava</groupId>
<artifactId>maven-scm-provider-svnjava</artifactId>
<version>2.0.6</version>
</dependency>
<dependency>
<groupId>org.tmatesoft.svnkit</groupId>
<artifactId>svnkit</artifactId>
<version>1.7.11</version>
</dependency>
</dependencies>
</plugin>
来源:http://maven.apache.org/plugins/maven-scm-publish-plugin/various-tips.html
但是执行后 mvn scm:update
它在 Maven 日志中有
[INFO] --- maven-scm-plugin:1.9.5:update (default-cli) @ testscm ---
[INFO] Executing: /bin/sh -c cd /home/stanimir/ProjectSvnTest && svn --non-interactive update /home/stanimir/ProjectSvnTest
和错误:svn not found
- 我知道..它没有安装在系统上。我想改用 svnkit 但这个插件如何使用 javasvn?
我 运行 来自命令行的错误 Maven 插件 mvn scm:update
(没有配置)而不是 mvn scm-publish:update
最后我在 maven-scm-plugin 上取得了成功:
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<version>1.9.5</version>
<configuration>
<providerImplementations>
<svn>javasvn</svn>
</providerImplementations>
<connectionUrl>scm:svn:https://..</connectionUrl>
<username>user</username>
<password>XXX</password>
</configuration>
<dependencies>
<dependency>
<groupId>com.google.code.maven-scm-provider-svnjava</groupId>
<artifactId>maven-scm-provider-svnjava</artifactId>
<version>2.0.6</version>
</dependency>
<dependency>
<groupId>org.tmatesoft.svnkit</groupId>
<artifactId>svnkit</artifactId>
<version>1.7.11</version>
</dependency>
</dependencies>
</plugin>
要克隆 SVN 存储库:mvn -Djsse.enableSNIExtension=false scm:checkout
要更新它:mvn scm:update
[INFO] --- maven-scm-plugin:1.9.5:checkout (default-cli) @ testscm ---
[INFO] Change the default 'svn' provider implementation to 'javasvn'.