2014-02-18 18 views
6

Ich habe andere Antworten auf diese Frage recherchiert, aber ich konnte mein spezifisches Problem noch nicht beheben. Ich versuche, Source-Client-Java-Dateien mit Maven und dem CXF-Codegen-Plugin zu generieren. Wenn ich mvn generate-sources starte, sagt es mir BUILD SUCCESS aber nichts zu generieren. Jede Hilfe wird geschätzt. Hier mein pom ist:Maven cxf-codegen-plugin erzeugt keine Quelle

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.tfs.common</groupId> 
    <artifactId>SpringCXF1</artifactId> 
    <packaging>war</packaging> 
    <version>0.0.1-SNAPSHOT</version> 

    <name>SpringCXF1 Maven Webapp</name> 
    <url>http://maven.apache.org</url> 

    <properties> 
     <cxf.version>2.7.3</cxf.version> 
     <project.build.sourceencoding>UTF-8</project.build.sourceencoding> 
    </properties> 

    <dependencies> 

    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>3.8.1</version> 
     <scope>test</scope> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-frontend-jaxws</artifactId> 
     <version>${cxf.version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-rt-transports-http</artifactId> 
     <version>${cxf.version}</version> 
    </dependency> 

    </dependencies> 

    <build> 
    <finalName>SpringCXF1</finalName> 
     <plugins> 

     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-compiler-plugin</artifactId> 
         <version>2.3.2</version> 
     <configuration> 
      <source>1.6</source> 
      <target>1.6</target> 
     </configuration> 
    </plugin> 

     <!-- Generate Java classes from WSDL during in generate-sources phase --> 
     <plugin> 
     <groupId>org.apache.cxf</groupId> 
     <artifactId>cxf-codegen-plugin</artifactId> 
     <version>${cxf.version}</version> 
     <executions> 
     <execution> 
      <id>generate-sources</id> 
      <phase>generate-sources</phase> 
      <configuration> 
      <sourceroot>${basedir}/src/main/java</sourceroot> 
      <wsdloptions> 
      <wsdloption> 
      <wsdl>${basedir}/src/main/resources/HostavailableService.wsdl</wsdl> 
      <extraargs> 
       <extraarg>-verbose</extraarg> 
        <extraarg>-client</extraarg> 
      </extraargs> 
      </wsdloption> 
      </wsdloptions> 
      </configuration> 
      <goals> 
      <goal>wsdl2java</goal> 
      </goals> 
     </execution> 
     </executions> 
     </plugin> 

     <!-- Add generated source --> 
     <plugin> 
     <groupId>org.codehaus.mojo</groupId> 
     <artifactId>build-helper-maven-plugin</artifactId> 
     <version>1.7</version> 
     <executions> 
     <execution> 
      <id>add-source</id> 
      <phase>generate-sources</phase> 
      <goals> 
      <goal>add-source</goal> 
      </goals> 
      <configuration> 
      <sources> 
      <source>${basedir}/src/main/java</source> 
      </sources> 
      </configuration> 
     </execution> 
     </executions> 
     </plugin> 

     <plugin> 
     <groupId>org.eclipse.m2e</groupId> 
     <artifactId>lifecycle-mapping</artifactId> 
     <version>1.0.0</version> 
     <configuration> 
      <lifecyclemappingmetadata> 
      <pluginexecutions> 
      <pluginexecution> 
      <pluginexecutionfilter> 
       <groupid>org.apache.cxf</groupid> 
       <artifactid>cxf-codegen-plugin</artifactid> 
       <versionrange>[2.3.3,)</versionrange> 
       <goals> 
       <goal>wsdl2java</goal> 
       </goals> 
      </pluginexecutionfilter> 
      <action> 
       <execute> 
      </execute></action> 
      </pluginexecution> 
      </pluginexecutions> 
      </lifecyclemappingmetadata> 
      <lifecycleMappingMetadata> 
      <pluginExecutions> 
       <pluginExecution> 
        <pluginExecutionFilter> 
         <groupId>org.apache.cxf</groupId> 
         <artifactId>cxf-codegen-plugin</artifactId> 
         <versionRange>[2.7.3,)</versionRange> 
         <goals> 
          <goal>wsdl2java</goal> 
         </goals> 
        </pluginExecutionFilter> 
        <action> 
         <ignore></ignore> 
        </action> 
       </pluginExecution> 
       <pluginExecution> 
        <pluginExecutionFilter> 
         <groupId>org.codehaus.mojo</groupId> 
         <artifactId> 
          build-helper-maven-plugin 
         </artifactId> 
         <versionRange>[1.7,)</versionRange> 
         <goals> 
          <goal>add-source</goal> 
         </goals> 
        </pluginExecutionFilter> 
        <action> 
         <ignore></ignore> 
        </action> 
       </pluginExecution> 
      </pluginExecutions> 
      </lifecycleMappingMetadata> 
     </configuration> 
     </plugin> 
     </plugins> 

    </build> 

</project> 

Hier ist die Ausgabe bei der Ausführung von mvn generieren-Quellen:

[INFO] Scanning for projects... 
[INFO]                   
[INFO] ------------------------------------------------------------------------ 
[INFO] Building SpringCXF1 Maven Webapp 0.0.1-SNAPSHOT 
[INFO] ------------------------------------------------------------------------ 
[INFO] 
[INFO] --- cxf-codegen-plugin:2.7.3:wsdl2java (generate-sources) @ SpringCXF1 --- 
[INFO] Nothing to generate 
[INFO] 
[INFO] --- build-helper-maven-plugin:1.7:add-source (add-source) @ SpringCXF1 --- 
[INFO] Source directory: /Users/dmattrm/Documents/DevEnvironment/TFS_Maven2/SpringCXF1/src/main/java added. 
[INFO] ------------------------------------------------------------------------ 
[INFO] BUILD SUCCESS 
[INFO] ------------------------------------------------------------------------ 
[INFO] Total time: 1.505s 
[INFO] Finished at: Tue Feb 18 16:54:04 CST 2014 
[INFO] Final Memory: 5M/81M 
[INFO] ------------------------------------------------------------------------ 

Antwort

3

Die XML-Maven-Tags für die CXF-Plugin Groß- und Kleinschreibung, sollte diese Arbeit:

<configuration> 
    <sourceRoot>${basedir}/src/main/java</sourceRoot> 
    <wsdlOptions> 
     <wsdlOption> 
      <wsdl>${basedir}/src/main/resources/HostavailableService.wsdl</wsdl> 
      <extraargs> 
       <extraarg>-verbose</extraarg> 
       <extraarg>-client</extraarg> 
      </extraargs> 
     </wsdlOption> 
    </wsdlOptions> 
</configuration> 
+0

danke. das hat funktioniert. –

0

Werfen Sie auch einen Blick auf Ihre ./target/ -Folder. Nachdem die Code-Generierung erfolgreich durchgeführt wurde, finden Sie hier den Ordner cxf-codegen-plugin-markers. Sie müssen diesen Ordner löschen, um CXF zu zwingen, die Codegenerierung erneut auszuführen.