本文介绍了如何在Maven中跳过生成源的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在Maven中可以跳过生成源吗?

Is there way to skip generate-sources in Maven?

通过命令行选项执行

推荐答案

我遇到的情况是,当WSDL或WADL发生变化时,都会生成CXF类.因此,我会在需要时显式生成它.因此,我创建了一个单独的配置文件,即一个新的配置文件cxf-gen以及我通常的dev,uat,syst.具有用于生成类的插件.简而言之,每当我需要重新生成类时,我都会切换到配置文件并运行generate-sources.这是我使用的示例配置文件.

I've scenario where I generate CXF classes when ever I there is change in WSDL or WADL. Hence I generate it explicitly whenever I need. Hence I created a separate profile a new profile cxf-gen along with my usual dev, uat, syst. which has plugins to generate the classes. In short whenever I need to regenerate the classes I switch to the profile and run generate-sources. Here is sample profile I use.

<profiles>
    <profile>
        <id>dev</id>
        <activation>
            <activeByDefault>true</activeByDefault>
        </activation>
        <properties>
            <envName>dev</envName>
        </properties>
    </profile>
    <profile>
        <id>uat</id>
        <properties>
            <envName>uat</envName>
        </properties>
    </profile>

    <profile>
        <id>jaxB-gen</id>
        <properties>
            <envName>dev</envName>
        </properties>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>jaxb2-maven-plugin</artifactId>
                    <version>1.5</version>
                    <configuration>
                        <!-- CONFIGS ->
                    </configuration>
                    <executions>
                        <execution>
                            <id>xjc</id>
                            <goals>
                                <goal>xjc</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </profile>
    <profile>
        <id>code-gen</id>
        <properties>
            <envName>dev</envName>
        </properties>
        <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>
                                <!-- CONFIGS ->
                            </configuration>
                            <goals>
                                <goal>wsdl2java</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <!-- wadl2java Required only when JAXRS classes are to be generated -->
                <plugin>
                    <groupId>org.apache.cxf</groupId>
                    <artifactId>cxf-wadl2java-plugin</artifactId>
                    <version>2.7.6</version>
                    <executions>
                        <execution>
                            <id>generate-sources</id>
                            <phase>generate-sources</phase>
                            <configuration>
                                <!-- CONFIGS ->
                            </configuration>
                            <goals>
                                <goal>wadl2java</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

                <plugin>
                    <groupId>com.googlecode.jsonschema2pojo</groupId>
                    <artifactId>jsonschema2pojo-maven-plugin</artifactId>
                    <version>0.3.7</version>
                    <configuration>
                        <!-- CONFIGS ->
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>

            </plugins>
        </build>
    </profile>
</profiles>

这篇关于如何在Maven中跳过生成源的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-28 05:39