2012-01-06 4 views
4

Я использую netbeans с maven 3. Когда я пытаюсь скомпилировать с помощью jaxws-maven-plugin, я получаю следующую ошибку.maven jaxws Не удалось выполнить wsgen

Вот мой ПОМ

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.codehaus.mojo</groupId> 
      <artifactId>jaxws-maven-plugin</artifactId> 
      <executions> 
       <execution> 
        <id>teamWS</id> 
        <goals> 
         <goal>wsgen</goal> 
        </goals> 
        <phase>generate-sources</phase> 
        <configuration> 
         <resourceDestDir>${project.build.directory}/classes/wsdl</resourceDestDir> 
         <sei>xyz.timerserver.server.TimeServer</sei> 
         <genWsdl>true</genWsdl> 
         <keep>true</keep> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
    </dependency> 

    <dependency> 
     <groupId>javax.annotation</groupId> 
     <artifactId>jsr250-api</artifactId> 
    </dependency> 

    <dependency> 
     <groupId>javax.jws</groupId> 
     <artifactId>jsr181-api</artifactId> 
     <version>1.0-MR1</version> 
    </dependency> 

    <dependency> 
     <groupId>com.sun.xml.ws</groupId> 
     <artifactId>jaxws-rt</artifactId> 
    </dependency> 

</dependencies> 

Это сообщение об ошибке, что я получаю. Я пытался добавить tools.jar используя системную область зависимость, но до сих пор не повезло

Failed to execute goal org.codehaus.mojo:jaxws-maven-plugin:1.10:wsgen (teamWS) on project JWSServer: Failed to execute wsgen: com/sun/mirror/apt/AnnotationProcessorFactory: com.sun.mirror.apt.AnnotationProcessorFactory -> [Help 1] 

ответ

11

В качестве первого шага, убедитесь, что вы используете Maven с правильной версией Java - JAXWS: wsgen (1.12) появляется сбои в работе с Java 7, в таком случае использования Java 6, то есть:

  • если запустить ее из оболочки, export JAVA_HOME=/path/to/java/6
  • , если вы используете его из IDE , укажите версию java во время запуска IDE
    • , например. для затмения, использовать стартовый вариант -vm /path/to/java/6

Для меня это решается Failed to execute wsgen вызванное com.sun.xml.bind.v2.runtime.IllegalAnnotationsException.

+0

Переключение с Java 8 на Java 7 установил ее для меня. –

10

Попробуйте использовать обновленную версию плагина из проекта JAX-WS commons.

<groupId>org.jvnet.jax-ws-commons</groupId> 
<artifactId>jaxws-maven-plugin</artifactId> 
<version>2.2</version> 
1

Проект просто вернулся к MojoHaus, так что вы должны использовать последнюю версию с there.

  1. < 2007: 1.0-1.12 (идентификатор_группы org.codehaus.moj о)
  2. 2007-2015: 2.1-2.3.1 (идентификатор_группы org.jvnet.jax-WS- Обще)
  3. 2015-сегодня: > = 2,4 (идентификатор_группы org.codehaus.mojo)

Оригинальный код был разработан в проекте Codehaus Mojo, затем с марта 2007 года проект перешел в jax-ws-commons с версией 1.x в org.codehaus.mojo groupId и версии 2.x в org. jvnet.jax-ws-commons groupId. В сентябре 2015 года, для версии 2.4, он вернулся в MojoHaus (новый дом Codehaus Mojo) в org.codehaus.mojo GroupID

<dependency> 
<groupId>org.codehaus.mojo</groupId> 
<artifactId>jaxws-maven-plugin</artifactId> 
<version>2.5</version> 
</dependency> 
Смежные вопросы