首页 > 解决方案 > 在 Maven 发布插件 3.0.0 阶段添加自定义执行

问题描述

我想在 Maven 发布准备目标(js、json 的东西)期间转换和提交其他文件。

这件事通常发生两次(“发布”和“下一次迭代”),直到现在我设法结合配置文件和使用completionGoal配置来做到这一点:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-release-plugin</artifactId>
    <executions>
        <execution>
            <id>prepare-release</id>
            <goals>
                <goal>prepare</goal>
            </goals>
            <configuration>
                <arguments>-Pprepare-release</arguments>
                <completionGoals>-pl :some-module -Pprepare-next-iter frontend:npm@prepare-version</completionGoals>
            </configuration>
        </execution>
    </executions>
</plugin>

prepare-releaseprepare-next-iter停用一些跳过标志,这些标志最终会运行一个执行转换 + 提交的 npm 脚本。我最近更新到发布插件 3.0.0-M4,并注意到创建了一个阶段列表,对应于准备所需的所有步骤。
我说的是这个:

...
[INFO] --- maven-release-plugin:3.0.0-M4:prepare (default-cli) @ project ---
[INFO] phase verify-release-configuration
[INFO] starting prepare goal, composed of 17 phases: check-poms, scm-check-modifications, check-dependency-snapshots, create-backup-poms, map-release-versions, input-variables, map-development-versions, rewrite-poms-for-release, generate-release-poms, run-preparation-goals, scm-commit-release, scm-tag, rewrite-poms-for-development, remove-release-poms, run-completion-goals, scm-commit-development, end-release
[INFO] [prepare] 1/17 check-poms
[INFO] [prepare] 2/17 scm-check-modifications
...

有没有办法通过标准 Maven 配置将一些额外的自定义执行挂钩到这些阶段之一?

标签: maven-release-plugin

解决方案


推荐阅读