2012-04-09 27 views
7

Próbuję użyć wsimport do generowania klas z WSDL.Wsimport kończy się niepowodzeniem podczas budowania Mavena

Używam POP Maven generowane przez Netbeans (7.1), ale pojawia się następujący komunikat, gdy próbuję zbudować go:

[jaxws:wsimport] 
Processing: C:\Users\...\src\wsdl\ShipService_v5.wsdl 
jaxws:wsimport args: [-s, C:\Users\...\target\generated-sources\jaxws-wsimport, -d, C:\Users\...\target\classes, -verbose, -catalog, C:\Users\...\src\jax-ws-catalog.xml, -wsdllocation, file:/C:/Users/.../Desktop/ShipService_v5.wsdl, -extension, -Xnocompile, C:\Users\...\src\wsdl\ShipService_v5.wsdl] 
parsing WSDL... 

------------------------------------------------------------------------ 
BUILD FAILURE 
------------------------------------------------------------------------ 
Total time: 1.361s 
Finished at: Mon Apr 09 12:51:52 BST 2012 
Final Memory: 4M/120M 
------------------------------------------------------------------------ 
Failed to execute goal org.codehaus.mojo:jaxws-maven-plugin:1.10:wsimport (wsimport-generate-ShipService_v5) on project RPDataStreams: Error executing: wsimport [-s, C:\Users\...\target\generated-sources\jaxws-wsimport, -d, C:\Users\...\target\classes, -verbose, -catalog, C:\Users\...\src\jax-ws-catalog.xml, -wsdllocation, file:/C:/Users/.../Desktop/ShipService_v5.wsdl, -extension, -Xnocompile, C:\Users\...\src\wsdl\ShipService_v5.wsdl] -> [Help 1] 

Sekcja wtyczkę z moim POM:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>jaxws-maven-plugin</artifactId> 
    <version>1.10</version> 
    <executions> 
     <execution> 
      <goals> 
       <goal>wsimport</goal> 
      </goals> 
      <configuration> 
       <wsdlFiles> 
        <wsdlFile>ShipService_v5.wsdl</wsdlFile> 
       </wsdlFiles> 
       <wsdlLocation>file:/C:/Users/.../Desktop/ShipService_v5.wsdl</wsdlLocation> 
       <staleFile>${project.build.directory}/jaxws/stale/ShipService_v5.stale</staleFile> 
      </configuration> 
      <id>wsimport-generate-ShipService_v5</id> 
      <phase>generate-sources</phase> 
     </execution> 
    </executions> 
    <dependencies> 
     <dependency> 
      <groupId>javax.xml</groupId> 
      <artifactId>webservices-api</artifactId> 
      <version>1.4</version> 
     </dependency> 
    </dependencies> 
    <configuration> 
     <sourceDestDir>${project.build.directory}/generated-sources/jaxws-wsimport</sourceDestDir> 
     <xnocompile>true</xnocompile> 
     <verbose>true</verbose> 
     <extension>true</extension> 
     <catalog>${basedir}/src/jax-ws-catalog.xml</catalog> 
    </configuration> 
</plugin> 

Wiem, że nie ma nic złego w WSDL używam, próbowałem również z WSDL z http://graphical.weather.gov/xml/DWMLgen/wsdl/ndfdXML.wsdl.

Próbowałem zbudować ten projekt z Netbeans i na linii poleceń z serwera Ubuntu, za każdym razem otrzymuję ten sam wynik.

Teraz zawęziłem to do zależności od jconfig. Jeśli skomentuję poniższy blok, źródła sieci Web zostaną pomyślnie zbudowane.

<dependency> 
     <groupId>org.jconfig</groupId> 
     <artifactId>jconfig</artifactId> 
     <version>2.9</version> 
     <exclusions> 
      <exclusion> 
       <artifactId>jmxri</artifactId> 
       <groupId>com.sun.jmx</groupId> 
      </exclusion> 
     </exclusions> 
    </dependency> 

Dzięki za pomoc.

+0

uruchom maven z -X - mam nadzieję, że uzyskasz więcej informacji z wtyczki jaxws. – tdrury

+0

Trzy kropki w pliku 'C:/Users /.../ src /' wyglądają niepoprawnie, czy jest to jakiś rodzaj nowych okien? –

+0

... jest po prostu rozebrać pełną ścieżkę. Uruchamianie z -X nie daje żadnych użytecznych informacji. Usunąłem zależność jconfig i zastąpiłem ją konfiguracją Commons (która, jak sądzę, jest lepsza) i projekt jest teraz budowany. – jebbench

Odpowiedz

6

Należy użyć:

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

który jest najnowszą wersją (zauważ, że plugin został przeniesiony do org.jvnet.jax-ws-Gmin)

Edit:

Mogłabyś spróbuj wybiórczo wykluczać zależności jconfig build. Pełna lista wygląda następująco:

<dependency> 
    <groupId>org.jconfig</groupId> 
    <artifactId>jconfig</artifactId> 
    <version>2.9</version> 
    <exclusions> 
     <exclusion> 
      <groupId>com.sun.jmx</groupId> 
      <artifactId>jmxri</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>javax.xml.parsers</groupId> 
      <artifactId>jaxp-api</artifactId> 
     </exclusion> 
     <exclusion> 
      <groupId>crimson</groupId> 
      <artifactId>crimson</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 

Edytuj: czy naprawdę potrzebujesz jconfig? Jeśli nie, po prostu się go pozbyć.

+0

Zaktualizowałem POM jako sugerowany, ale otrzymałem taki sam wynik jak poprzednio. Usunięcie zależności JConfig pozwoli na zbudowanie projektu. – jebbench

+1

Przyrost wersji jaxws-maven-plugin do wersji 2.2 rozwiązał ten sam problem - dziękuję. – s1mm0t

0

W zakładce JRE konfiguracji przebiegu projektu, wybierz alternatywny JRE i dodać ścieżkę do zainstalowanego JDK. Dla mnie to rozwiązało problem.

Powiązane problemy