I am using the jaxws-maven-plugin from MojoHaus to generate Java classes from a .WSDL file in my repository following the example here.
pom.xml:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<goals>
<goal>wsimport</goal>
</goals>
</execution>
</executions>
<configuration>
<wsdlDirectory>resources</wsdlDirectory>
<wsdlFiles>
<wsdlFile>my.wsdl</wsdlFile>
</wsdlFiles>
<keep>true</keep>
<packageName>my.package.name</packageName>
<sourceDestDir>src</sourceDestDir>
<extension>true</extension>
</configuration>
</plugin>
However, when I build the project, I see:
[INFO] --- jaxws-maven-plugin:2.6:wsimport (default) @ MY_PROJECT ---
[INFO] Ignoring: file/path/here/resources/my.wsdl
Why is wsimport ignoring the file I deliberately specified? Note that if I do this the "wrong" way by using the <wsdlUrl> tag instead, the files are generated successfully (although the annotations have absolute file paths referencing my machine, which is why I changed it).
The solution is to edit and save the .WSDL file. wsimport will not generate the classes if the .WSDL file has not changed since the last time it did so.