2017-12-07 20 views
2

jaxb2-maven-pluginを設定して、同じ場所の異なるフォルダからWSDLを取得し、異なるパッケージに解析します。 mvn installを実行すると、最初のwsdlだけが処理され、2番目のwsdlは無視されます。バージョンを1.5から1.6に変更すると、2番目のWSDLだけが処理され、最初のWSDLは無視されます。これはちょっと変わったようです。私はそれらの両方が正しく処理され、パッケージ化されることを期待しています。構文/プラグインに必要な変更を提案してください。jaxb2-maven-pluginを使用してWSDLをさまざまなパッケージに解析できない

<plugin> 
<groupId>org.codehaus.mojo</groupId> 
<artifactId>jaxb2-maven-plugin</artifactId> 
<version>1.5</version> 
<executions> 
    <execution> 
     <id>xjc-rules</id> 
     <goals> 
      <goal>xjc</goal> 
     </goals> 
     <configuration> 
      <schemaDirectory>src/main/resources/wsdl</schemaDirectory> 
      <schemaFiles>*.wsdl</schemaFiles> 
      <xmlschema>false</xmlschema> 
      <wsdl>true</wsdl> 
      <args>-wsdl</args> 
      <packageName>com.baplc.ngs.dealing.rules</packageName> 
     </configuration> 
    </execution> 
    <execution> 
     <id>xjc-infra</id> 
     <goals> 
      <goal>xjc</goal> 
     </goals> 
     <configuration> 
      <schemaDirectory>src/main/resources/wsdl/infracloud</schemaDirectory> 
      <schemaFiles>*.wsdl</schemaFiles> 
      <xmlschema>false</xmlschema> 
      <wsdl>true</wsdl> 
      <args>-wsdl</args> 
      <packageName>com.baplc.ngs.dealing.informatica.cloud</packageName> 
     </configuration> 
    </execution> 
</executions> 

答えて

1

すべてexecution秒のconfiguration内の以下の行を含める必要があります(技術的には、あなただけの第二の実行に含める必要があるが、私はしたいと

<clearOutputDir>false</clearOutputDir> 

パラメータclearOutputDirは、デフォルトではtrueに設定されており、thの内容は削除されますe outputDirectory(デフォルトは${project.build.directory}/generated-sources/jaxb)。

clearOutputDirがtrueに設定されている場合、最初のWSDLファイルが最初の実行で処理されます。 2回目の実行では、出力ディレクトリがクリアされ(したがって、最初の実行から生成されたファイルは削除されます)、2番目のファイルが処理されます。したがって、2番目のファイルから生成されたクラスのみが表示されます。

詳細については、documentationを参照してください。

関連する問題