gpt4 book ai didi

java - 无法使用 jaxb2-maven-plugin 将 WSDL 解析为不同的包

转载 作者:行者123 更新时间:2023-11-30 10:21:43 24 4
gpt4 key购买 nike

我已将我的 jaxb2-maven-plugin 配置为从同一位置下的不同文件夹中获取 WSDL,并将它们解析为不同的包,因为它们提供的功能不同。在运行 mvn install 时,只有第一个 wsdl 被处理,第二个被忽略。将版本从 1.5 更改为 1.6 后,仅处理第二个 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>

最佳答案

您应该在所有执行配置中包含以下行:

<clearOutputDir>false</clearOutputDir>

(从技术上讲,您只需要在第二次执行时包含它,但我希望配置相似。)

参数clearOutputDir默认设置为true,会删除outputDirectory的内容(默认为${project.build.directory}/generated-sources/jaxb).

clearOutputDir 设置为 true 时,第一个 WSDL 文件在第一次执行时被处理。在第二次执行中,输出目录被清除(因此第一次执行生成的文件被删除)并处理第二个文件。所以您只能看到从第二个文件生成的类。

有关详细信息,请参阅 documentation .

关于java - 无法使用 jaxb2-maven-plugin 将 WSDL 解析为不同的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47694827/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com