views:

28

answers:

2

I have to generate sources using wsimport and i assume that it should go to /target/generated-sources/wsimport rather than /src/main/java.

The problem is that wsimport needs target folder created before execution and it fails. Can I create that dir first using any maven plugin. I can do it using ant but i prefer to keep it in POM.

A: 

Try using the add source goal of the build helper plugin:

<plugin>
  <groupId>org.codehaus.mojo</groupId>
  <artifactId>build-helper-maven-plugin</artifactId>
  <executions>
    <execution>
      <id>add-source</id>
      <phase>generate-sources</phase>
      <goals>
        <goal>add-source</goal>
      </goals>
      <configuration>
        <sources>
          <source>${basedir}/target/generated/src/wsimport</source>
        </sources>
      </configuration>
    </execution>
  </executions>
</plugin>  
serg10
This doesn't answer the question (and is not necessary)
Pascal Thivent
A: 
Pascal Thivent
I was executing wsimport using exec-maven-plugin and this was the problem. I switched to jaxws-maven-plugin and now it works fine for me.
Lorean
Maybe except compiling sources after processing each WSDL in generate-sources phase. I can't pass -Xnocompile argument to wsimport but it works anyway.
Lorean
@Lorean Not sure but 1. you should be able to declare optional wsimport commnd-line options using the `args` optional parameter 2. it seems the plugin is passing -Xnocompile by default.
Pascal Thivent