当我试图编译我的程序时。我收到以下错误消息:
Failed to execute goal org.jvnet.jax-ws-commons:jaxws-maven-plugin:2.2:wsgen (generate-wsdl) on project SimpleWebServices: Error executing: wsgen [-keep, -s, etc..........
所以,我开始四处寻找并进一步查找错误,我看到了这个:
Class not found: "com.test.ws.services.SimpleServiceImpl"
由于某种原因,WSGEN似乎找不到我的价值。有人有什么想法吗?
如果有兴趣的话,这是我的POM。。。
<plugin>
<groupId>org.jvnet.jax-ws-commons</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<id>generate-wsdl</id>
<phase>process-classes</phase>
<goals>
<goal>wsgen</goal>
</goals>
<configuration>
<sei>com.test.ws.services.SimpleServiceImpl</sei>
<genWsdl>true</genWsdl>
<verbose>true</verbose>
</configuration>
</execution>
</executions>
</plugin>
用户编辑:我想我明白了(根据@Thomas的建议)。我似乎没有在POM构建区域中指定源文件夹。导致我的源代码没有被编译。
添加:
<sourceDirectory>${project.basedir}/src/main/java</sourceDirectory>
帮我搞定了。
@托马斯,如果你公布你的答案,我很乐意给你答案。
感谢您的回复,
只需使用
mvn clean compile jaxws:wsgen
而不是
mvn clean jaxws:wsgen
问题是,没有可用的编译版本。wsgen
将适用于类路径,如带有ByteCode的JAR。
sourceDirectory
${project.basedir}/src/main/java
是maven默认值,所以您不必设置它。