测试端点上的jaxws-maven-plugin wsgen

时间:2011-06-13 11:50:22

标签: java maven jax-ws

我正在尝试让maven 3对两个Web服务端点运行wsgen。一个是位于src / main / java下的“生产”端点,另一个是位于src / test / java下的“测试”端点。

问题是,wsgen没有找到'test'sei类(大概)它只在类路径上有src / main / java。使用jaxws-maven-plugin直接设置wsgen类路径是不可能的(它没有配置元素)。我已经尝试绑定到generate-test-sources阶段但没有欢乐

这是pom片段:

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jaxws-maven-plugin</artifactId>
            <version>1.10</version>
            <executions>
                <!-- this works fine -->
                <execution>
                    <id>Production</id>
                    <configuration>
                        <genWsdl>true</genWsdl>
                        <verbose>true</verbose>
                        <protocol>soap1.1</protocol>
                        <sei>com.foo.ws.ProductionEndPoint</sei>
                        <sourceDestDir>${project.build.directory}/jaxws/wsgen/src</sourceDestDir>
                        <destDir>${project.build.directory}/jaxws/wsgen/classes</destDir>
                        <packageName>com.foo.ws</packageName> 
                    </configuration>
                    <goals>
                        <goal>wsgen</goal>
                    </goals>
                </execution>
                <!-- this fails with Class Not Found on the sei class -->
                <execution>
                    <phase>generate-test-sources</phase>
                    <id>Test</id>
                    <configuration>
                        <genWsdl>true</genWsdl>
                        <verbose>true</verbose>
                        <protocol>soap1.1</protocol>
                        <sei>com.foo.ws.TestEndPoint</sei>
                        <sourceDestDir>${project.build.directory}/jaxws/wsgen/src</sourceDestDir>
                        <destDir>${project.build.directory}/jaxws/wsgen/classes</destDir>
                        <packageName>com.foo.ws.test</packageName> 
                    </configuration>
                    <goals>
                        <goal>wsgen</goal>
                    </goals>
                </execution>
            </executions>

            <dependencies>
                <dependency>
                    <groupId>com.sun.xml.ws</groupId>
                    <artifactId>jaxws-tools</artifactId>
                    <version>2.1.4</version>
                </dependency>

            </dependencies>
        </plugin>
    </plugin>
</build>

1 个答案:

答案 0 :(得分:2)

您应该绑定到process-test-classes阶段 代替 <phase>process-test-classes</phase> 它应该是 <phase>process-test-classes</phase>