0

我不是 Maven 专家,所以这可能很明显,但它违背了我所见所闻的一切。

我正在使用 git scm 提供程序来创建标签。我可以让它正常工作,但我必须在命令行上提供标签并将 scm 信息放在父 POM 中。

如果我不将 scm 信息移至父级,则会抱怨未定义 connectionUrl。在父 POM 中工作正常(我猜这没什么大不了的)。

接下来是标签的更多痛苦 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-scm-plugin:1.9.4:tag (default-cli) on project mavenIRIS: The parameters 'tag' for goal org.apache.maven.plugins:maven-scm-plugin:1.9.4:tag are missing or invalid -> [Help 1]

这是我的 POM 信息:

    <profile>
        <id>updateTag</id>
        <activation>
            <activeByDefault>false</activeByDefault>
            <property>
                <name>build.mode</name>
                <value>release</value>
            </property>
        </activation>

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-scm-plugin</artifactId>
                    <version>1.9.4</version>
                    <configuration>
                        <git>jgit</git>
                        <tag>testTag</tag>
                        <connectionType>connection</connectionType>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>org.apache.maven.scm</groupId>
                            <artifactId>maven-scm-provider-jgit</artifactId>
                            <version>1.9.4</version>
                        </dependency>
                    </dependencies>                     
                    <executions>
                        <execution>
                        <goals>
                            <goal>tag</goal>
                        </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </profile>

谢谢

4

2 回答 2

0

我也面临同样的问题。我添加了以下配置文件并调用。它运作良好

<profile> <id>release</id> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-scm-plugin</artifactId> <version>${maven.scm.version}</version> <configuration> <tag>${project.version}</tag> <providerImplementations> <git>jgit</git> </providerImplementations> </configuration> <dependencies> <dependency> <groupId>org.apache.maven.scm</groupId> <artifactId>maven-scm-provider-jgit</artifactId> <version>${maven.scm.version}</version> </dependency> </dependencies> </plugin> </plugins> </build> </profile>

于 2016-01-22T10:37:11.207 回答
0

您需要在 POM 中提供以下 SCM 信息:

<scm>
 <connection>scm:git:ssh:<your url></connection>
 <developerConnection>scm:git:ssh:<your url></developerConnection>
 <url>scm:git:ssh:<your url></url>
</scm>
于 2016-10-07T11:08:18.497 回答