如何将目标添加到 maven-release-plugin 的 release:perform 阶段
How to add a goal to release:perform phase of maven-release-plugin
我使用kongchen的swagger-maven-plugin。此外,我使用 maven-release-plugin。从 swagger-maven-plugin 生成的 swagger.json 不是 repo 的一部分。如果我使用 mvn package 构建应用程序,则会生成 swagger.json 并且是 jar 的一部分。
如果我使用 maven-release-plugin 发布应用程序,swagger.json 不是 jar 文件的一部分。我检查了日志,发现 maven-release-plugin 有三个步骤 - release:clean、release:prepare 和执行。
release:clean - 清理工作区
release:prepare - 日志显示 swagger-maven-plugin 有效并生成了 swagger.json
release:perform - 日志显示执行由三个阶段组成(verify-completed-prepare-phases、checkout-prjoect-from-scm 和 运行-perform-goals)。我认为这意味着整个项目被再次签出,因此生成的文件消失了(这有多棒...)。
如何向 release:perform 添加另一个阶段?
我找到了以下文档https://maven.apache.org/maven-release/maven-release-manager/index.html and know that additional preparation goals can be added https://maven.apache.org/maven-release/maven-release-plugin/examples/run-goals-before-commit.html
我需要将目标添加到 release:perform 步骤(例如编译或打包)。我怎样才能做到这一点?
谢谢!
<plugin>
<groupId>com.github.kongchen</groupId>
<artifactId>swagger-maven-plugin</artifactId>
<version>3.1.8</version>
<configuration>
<apiSources>
<apiSource>
<basePath>/.../api</basePath>
<locations>
<location>not.public</location>
</locations>
<info>
<title>${project.artifactId}</title>
<version>${project.version}</version>
</info>
<outputFormats>json</outputFormats>
<swaggerDirectory>${basedir}/src/main/resources/META-INF/path</swaggerDirectory>
</apiSource>
</apiSources>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
您需要设置release:perform
的goals
参数。这包含在“内部构建”中执行的目标。
我使用kongchen的swagger-maven-plugin。此外,我使用 maven-release-plugin。从 swagger-maven-plugin 生成的 swagger.json 不是 repo 的一部分。如果我使用 mvn package 构建应用程序,则会生成 swagger.json 并且是 jar 的一部分。
如果我使用 maven-release-plugin 发布应用程序,swagger.json 不是 jar 文件的一部分。我检查了日志,发现 maven-release-plugin 有三个步骤 - release:clean、release:prepare 和执行。
release:clean - 清理工作区
release:prepare - 日志显示 swagger-maven-plugin 有效并生成了 swagger.json
release:perform - 日志显示执行由三个阶段组成(verify-completed-prepare-phases、checkout-prjoect-from-scm 和 运行-perform-goals)。我认为这意味着整个项目被再次签出,因此生成的文件消失了(这有多棒...)。
如何向 release:perform 添加另一个阶段?
我找到了以下文档https://maven.apache.org/maven-release/maven-release-manager/index.html and know that additional preparation goals can be added https://maven.apache.org/maven-release/maven-release-plugin/examples/run-goals-before-commit.html
我需要将目标添加到 release:perform 步骤(例如编译或打包)。我怎样才能做到这一点?
谢谢!
<plugin>
<groupId>com.github.kongchen</groupId>
<artifactId>swagger-maven-plugin</artifactId>
<version>3.1.8</version>
<configuration>
<apiSources>
<apiSource>
<basePath>/.../api</basePath>
<locations>
<location>not.public</location>
</locations>
<info>
<title>${project.artifactId}</title>
<version>${project.version}</version>
</info>
<outputFormats>json</outputFormats>
<swaggerDirectory>${basedir}/src/main/resources/META-INF/path</swaggerDirectory>
</apiSource>
</apiSources>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
您需要设置release:perform
的goals
参数。这包含在“内部构建”中执行的目标。