gpt4 book ai didi

maven-2 - Maven : Different configuration for different goals

转载 作者:行者123 更新时间:2023-12-02 16:00:57 25 4
gpt4 key购买 nike

我希望针对 Maven 发布插件的不同目标有不同的配置选项。故事是这样的:

我正在将 Git 用于 SCM。我希望release:prepare插件在本地完成所有操作,并让release:perform一次性将所有更改推送到远程存储库。

我尝试过做这样的事情:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.2</version>
<executions>
<execution>
<id>release-prepare</id>
<configuration>
<pushChanges>false</pushChanges>
</configuration>
<goals>
<goal>prepare</goal>
</goals>
</execution>
<execution>
<id>release-perform</id>
<configuration>
<localCheckout>true</localCheckout>
<pushChanges>true</pushChanges>
</configuration>
<goals>
<goal>perform</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.7-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>

如果有人想知道的话,localCheckout=true 需要 1.7-SNAPSHOT 版本才能正常工作 (http://jira.codehaus.org/browse/SCM-662)。

使用上面提到的设置,所有配置选项都将被完全忽略,但是当我简单地指定这样的设置时:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.2.2</version>
<configuration>
<localCheckout>true</localCheckout>
<pushChanges>false</pushChanges>
</configuration>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-scm-plugin</artifactId>
<version>1.7-SNAPSHOT</version>
</dependency>
</dependencies>
</plugin>

它们既适用于release:prepare,也适用于release:perform,这不是期望的结果。

编辑:

为了澄清这一点:当我们使用 Git 进行 SCM 时,我们希望所有操作都可以准备本地发布,如果您考虑到本地 Git 存储库是一个本地版本库,那么这并非没有道理。无论如何,都是成熟的 repo 协议(protocol)。然而,当我们进行实际发布时,我们希望将所有更改推送到上游存储库,以便一切都正确设置。

谁能帮我解决一下吗?

最佳答案

如果您需要更改,则必须在发布期间更改发布插件原因:执行(目标!)发布插件将检查项目的标记状态并对其调用部署生命周期。所以这行不通。

编辑:我已经用 Git 项目检查了这一点,并对其进行了发布,正如我所解释的那样。在release:prepare目标期间,更改将被推送到远程存储库。在发布期间:执行目标不会将任何内容推送到远程存储库,只会进行克隆以 checkout 标记的版本。

关于maven-2 - Maven : Different configuration for different goals,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9430104/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com