gpt4 book ai didi

maven-2 - 当我安装 :install 时,如何配置 Maven 以提交到 Mercurial 存储库

转载 作者:行者123 更新时间:2023-12-02 11:05:52 24 4
gpt4 key购买 nike

MavenSCM插件似乎没有提供“提交”目标。 scm:checkin 执行提交和推送。我需要避免插入。

我只是对在 install:install 期间执行 hg commit 感兴趣。我没有使用 release 插件,也不需要它。我只是在多模块环境中本地工作,并希望确保我的源存储库与每个模块本地安装的 Maven 快照保持一致。换句话说,每次安装模块的新快照时,我都希望将相关代码提交给 hg 以使每个快照直接与 hg 修订版(或快照之间发生多次提交时的修订版范围)相关联。

最佳答案

以下内容将绑定(bind) scm:checkininstall阶段。只要存储库是 file://方案(至少对于 Mercurial,根据 the code ),在 scm:checkin 期间不执行推送 .

  1. 定义以下步骤中使用的属性:

    <properties>
    <message>maven install:install auto-checkin.</message>
    <repository.local>file:///path/to/local/repository</repository.local>
    <repository.type>hg</repository.type>
    </properties>

    <message>可以是您选择的任何内容。完全修复并不理想,因为提交应该包含有关所做更改的有意义的消息。但是,我确实相信自动提交中应该包含一条标准消息来识别它。只需修改 <message>每次安装之前,请使用第 1 步中的属性。

  2. 这只是基于 Maven 项目的标准 scm 节点。由于这仅涉及本地存储库,因此 URL 都是相同的。

    <scm>
    <connection>scm:${repository.type}:${repository.local}</connection>
    <developerConnection>scm:${repository.type}:${repository.local}</developerConnection>
    <url>scm:${repository.type}:${repository.local}</url>
    </scm>
  3. 这是在install期间运行的插件。执行提交的阶段。它只会根据步骤 2 中的定义执行正确的 scm checkin 。

    <build>
    <plugins>
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-scm-plugin</artifactId>
    <version>1.2</version>
    <executions>
    <execution>
    <phase>install</phase>
    <goals>
    <goal>checkin</goal>
    </goals>
    </execution>
    </executions>
    </plugin>
    </plugins>
    </build>

一个问题是我收到以下内容。

DEPRECATED: Binding aggregator mojos to lifecycle phases in the POM is considered dangerous. This feature has been deprecated. Please adjust your POM files accordingly.

我正在研究如何解决它,但目前它有效,我会继续下去。

关于maven-2 - 当我安装 :install 时,如何配置 Maven 以提交到 Mercurial 存储库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1929560/

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