This plugin runs the JAX-WS wsimport compiler from Maven.
<project> ... <dependencies> ... <dependency> <groupId>com.sun.xml.ws</groupId> <artifactId>jaxws-rt</artifactId> <version>2.2.10</version> </dependency> ... </dependencies> ... <build> <plugins> <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> <!-- The name of your generated source package --> <packageName>com.example.myservice</packageName> </configuration> <!-- if you want to use a specific version of JAX-WS, you can do so like this --> <dependencies> <dependency> <groupId>com.sun.xml.ws</groupId> <artifactId>jaxws-tools</artifactId> <version>2.2.5</version> </dependency> </dependencies> </plugin> <!-- Don't forget to use endorsed with JAX-WS 2.2 on Java 6 !! --> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.6</source> <target>1.6</target> <compilerArguments> <endorseddirs>${project.build.directory}/endorsed</endorseddirs> </compilerArguments> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>2.3</version> <executions> <execution> <phase>validate</phase> <goals> <goal>copy</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/endorsed</outputDirectory> <silent>true</silent> <artifactItems> <artifactItem> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.2.7</version> <type>jar</type> </artifactItem> <artifactItem> <groupId>javax.xml.ws</groupId> <artifactId>jaxws-api</artifactId> <version>2.2.9</version> <type>jar</type> </artifactItem> </artifactItems> </configuration> </execution> </executions> </plugin> ... </plugins> </build> ... </project>