2016-10-05 555 views
0
<!-- tag::wsdl[] --> 
<plugin> 
    <groupId>org.jvnet.jaxb2.maven2</groupId> 
    <artifactId>maven-jaxb2-plugin</artifactId> 
    <version>0.12.3</version> 
    <executions> 
     <execution> 
      <id>firstrun</id> 
      <phase>generate-sources</phase> 
      <goals> 
       <goal>generate</goal> 
      </goals> 
      <configuration> 
       <schemaLanguage>WSDL</schemaLanguage> 
       <generatePackage>my.package.osb.services.wsdl1</generatePackage> 
       <schemas> 
        <schema> 
         <url>http://x.x.x.x:8002/wsdl1?wsdl</url> 
        </schema> 
       </schemas> 
      </configuration> 
     </execution> 
     <execution> 
      <id>secondrun</id> 
      <phase>generate-sources</phase> 
      <goals> 
       <goal>generate</goal> 
      </goals> 
      <configuration> 
      <schemaLanguage>WSDL</schemaLanguage> 
      <generatePackage>my.package.osb.services.wsdl2</generatePackage> 
      <schemas> 
       <schema> 
        <url>http://x.x.x.x:8002/wsdl2?wsdl</url> 
       </schema> 
      </schemas> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 
<!-- end::wsdl[] --> 

我的理解是,上面應該在兩個不同的包中生成兩個URL中描述的POJO。多個WSDL Url使用maven-jaxb2-plugin生成源代碼

我不明白爲什麼它不起作用。我mvn jaxb2:generate後得到的錯誤是No schemas to compile. Skipping XJC execution.

可以在一,請提供有關如何正確但WSDL的URL做一個完整的解決方案?

+1

它會幫助評論downvote以避免將來出現同樣的問題。 – idipous

+0

發佈完整的'mvn -X clean install'。否則,配置看起來很好。這是一個測試項目。也許嘗試升級到'0.13.1'。 – lexicore

回答

0

如果您運行mvn jaxb2:generate maven在執行中不使用configuration

您已經聲明瞭一個phase,您的執行應該被綁定,因此只需運行mvn generate-sources

https://maven.apache.org/guides/mini/guide-configuring-plugins.html#Using_the_executions_Tag說:

注:<executions>標籤內配置從那些在他們不能從一個直接的命令行調用中使用外<executions>不同。相反,只有在它們綁定的生命週期階段被調用時纔會應用它們。或者,如果您將配置部分移到執行部分之外,則它將全局應用於插件的所有調用。

+0

當我給'mvn generate-sources'什麼都沒有發生。 – idipous

+0

這將是另一個問題......如果執行被綁定到生命週期階段,那麼它們應該由maven執行。任何日誌? –

+0

沒有幫助。我訴諸另一個插件,它的工作。錯誤可能是我在插件管理器中插入了整個插件。因爲這是其他插件的工作原理。我將使用上述配置進行測試並更新問題 – idipous