我在使用Git的Maven SCM插件时遇到问题。我无法让插件工作,因为它说找不到提供程序。运行mvn scm:tag
时,它会给我以下错误:
[错误]无法执行目标org.apache.maven.plugins:maven-scm-plugin:1.9:tag 项目hello-world-service-minimal上的(default-cli):无法运行tag命令: 无法加载scm提供程序。没有这样的提供者:'git:ssh://git@git-eng.REDACTED.com' 。 - > [帮助1]
我的pom.xml如下所示:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>net.REDACTED</groupId>
<artifactId>hello-world-service-minimal</artifactId>
<version>1.0.13</version>
<packaging>pom</packaging>
<name>hello-world-service</name>
<properties>
<lang.java.source>1.7</lang.java.source>
<lang.java.target>1.7</lang.java.target>
<dep.junit>4.11</dep.junit>
</properties>
<scm>
<developerConnection>scm:git:ssh://git@git-eng.REDACTED.com|PROJECT_NAME/hello-world-service-minimal.git</developerConnection>
<url>scm:git:http://git-eng.REDACTED.com/PROJECT_NAME/hello-world-service-minimal/tree/master</url>
</scm>
<distributionManagement>
<repository>
<id>dev.release</id>
<url>file:${project.build.directory}/repository/</url>
</repository>
</distributionManagement>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<artifactId>maven-scm-plugin</artifactId>
<version>1.9</version>
<configuration>
<tag>${project.artifactId}-${project.version}</tag>
</configuration>
</plugin>
</plugins>
</build>
</project>
任何人都知道如何解决这个问题?这真让我抓狂。我根本无法弄清楚我做错了什么。
答案 0 :(得分:18)
<url>
标记用于常规可浏览的网址。您需要一个<connection>
标记(<connection>
用于读访问,<developerConnection>
用于写访问权限):
<scm>
<connection>scm:git:ssh://git@git-eng.REDACTED.com|PROJECT_NAME/hello-world-service-minimal.git</connection>
<developerConnection>scm:git:ssh://git@git-eng.REDACTED.com|PROJECT_NAME/hello-world-service-minimal.git</developerConnection>
<url>http://git-eng.REDACTED.com/PROJECT_NAME/hello-world-service-minimal/tree/master</url>
</scm>
有关详细信息,请参阅Maven POM Reference。