如何使cxf-codegen-plugin和wsdl2java目标检查wsdls使用的xsd文件是否已被修改?当我在xsd中进行更改然后运行mvn verify
时,它不会重新编译jar文件。
插件配置的摘录。
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-codegen-plugin</artifactId>
<version>3.0.4</version>
<executions>
<execution>
<id>generate-us-sources</id>
<phase>generate-sources</phase>
<configuration>
<sourceRoot>${project.build.directory}/generated/cxf</sourceRoot>
<wsdlOptions>
<wsdlOption>
<wsdl>${schemas.location}/usidentityservice.wsdl
</wsdl>
<extraargs>
<extraarg>-all</extraarg>
<extraarg>-impl</extraarg>
<extraarg>-validate</extraarg>
<extraarg> -wsdlLocation
</extraarg>
<extraarg> classpath:/us.wsdl
</extraarg>
</extraargs>
</wsdlOption>
<wsdlOption>
<wsdl>${schemas.location}/usv2.wsdl
</wsdl>
<extraargs>
<extraarg>-all</extraarg>
<extraarg>-impl</extraarg>
<extraarg>-validate</extraarg>
<extraarg> -wsdlLocation
</extraarg>
<extraarg> classpath:/usv2.wsdl
</extraarg>
</extraargs>
</wsdlOption>
</wsdlOptions>
</configuration>
<goals>
<goal>wsdl2java</goal>
</goals>
</execution>
</executions>
</plugin>
一个不利的解决方案是放置maven clean plugin以便每次都清理它并且不会错过xsd更改,但每次都会清除它,这会使构建变慢。