默认跳过maven2插件

发布于 2024-08-28 05:41:16 字数 182 浏览 7 评论 0原文

我正在寻找一种不在安装时执行插件的方法。更具体地说,我的场景如下:

  1. 我使用 org.apache.cxf:cxf-codegen-plugin 生成源代码。
  2. 每次我清理+安装都会生成源代码,
  3. 我只希望在我明确请求时生成源代码。

任何和所有的帮助将不胜感激!

I am looking for a way to not have a plugin execute on install. More specifically, my scenario is as follows:

  1. I am using org.apache.cxf:cxf-codegen-plugin to generate source code.
  2. Every time I clean+install the source is generated
  3. I only want generation of source code to happen when I explicitly request it.

Any and all help would be greatly appreciated!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

苦妄 2024-09-04 05:41:16

我只希望在我明确请求时生成源代码。

最好的选择是在配置文件中添加插件声明并显式激活此配置文件:

<project>
  ...
  <profiles>
    <profile>
      <id>codegen</id>
      ...
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-codegen-plugin</artifactId>
            <version>${cxf.version}</version>
            <executions>
              <execution>
                <id>generate-sources</id>
                <phase>generate-sources</phase>
                <configuration>
                  <sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
                  <wsdlOptions>
                    <wsdlOption>
                      <wsdl>${basedir}/src/main/wsdl/myService.wsdl</wsdl>
                    </wsdlOption>
                  </wsdlOptions>
                </configuration>
                <goals>
                  <goal>wsdl2java</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>

并在您希望生成代码时运行以下命令:

mvn clean install -Pcodegen

I only want generation of source code to happen when I explicitly request it.

The best option would be to add the plugin declaration in a profile and to explicitly activate this profile:

<project>
  ...
  <profiles>
    <profile>
      <id>codegen</id>
      ...
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-codegen-plugin</artifactId>
            <version>${cxf.version}</version>
            <executions>
              <execution>
                <id>generate-sources</id>
                <phase>generate-sources</phase>
                <configuration>
                  <sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
                  <wsdlOptions>
                    <wsdlOption>
                      <wsdl>${basedir}/src/main/wsdl/myService.wsdl</wsdl>
                    </wsdlOption>
                  </wsdlOptions>
                </configuration>
                <goals>
                  <goal>wsdl2java</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>

And run the following when you want the code generation to happen:

mvn clean install -Pcodegen
山田美奈子 2024-09-04 05:41:16

我相信您想在 POM 中的 cxf 的 plugin 元素中添加一个 executions 元素。您应该能够将生成目标绑定到您想要的阶段。请参阅: http://maven.apache.org/pom.html#Plugins

I believe you want to add an executions element to cxf's plugin element in your POM. You should be able to bind the generation goal to the phase you'd prefer. See: http://maven.apache.org/pom.html#Plugins

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文