有没有生成生成器的 JAXB 插件?
2022-09-03 14:15:19
您是否知道任何好的 JAXB 插件为生成的 JAXB 类生成了生成器模式类?使用 JAXB 生成的类编写域真的很讨厌。我看到有人在2010年写了一个插件,但它没有使用最新的maven插件jaxb2-maven-plugin,它还要求您为每种架构类型指定绑定,这是不可靠的。
您是否知道任何好的 JAXB 插件为生成的 JAXB 类生成了生成器模式类?使用 JAXB 生成的类编写域真的很讨厌。我看到有人在2010年写了一个插件,但它没有使用最新的maven插件jaxb2-maven-plugin,它还要求您为每种架构类型指定绑定,这是不可靠的。
是的,现在有一个插件可以为JAXB生成的类生成流畅的构建器。有一个github项目
https://github.com/mklemm/jaxb2-rich-contract-plugin
它包含几个有用的 JAXB 插件。您可以从github下载源代码和二进制文件,或者从中央存储库获取maven工件
希望这有帮助。如果您有任何疑问,请问我,我是发起它的人。
来自文件的以下片段,使用maven来生成JAXB类,并利用它来附加流畅的接口......这本身并不完全是一个完整的构建器模式...但我认为它们为人们在这个方向上取得了不错的进展留下了空间。pom.xml
cxf-xjc-plugin
jaxb-fluent-api
<!-- Used to generate source code based on XSD (schema) file -->
<!-- http://cxf.apache.org/cxf-xjc-plugin.html -->
<plugin>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-xjc-plugin</artifactId>
<version>2.7.7</version>
<configuration>
<extensions>
<extension>net.java.dev.jaxb2-commons:jaxb-fluent-api:2.1.8</extension>
</extensions>
</configuration>
<executions>
<execution>
<id>generate-xsd-sources</id>
<phase>generate-sources</phase>
<goals>
<goal>xsdtojava</goal>
</goals>
<configuration>
<sourceRoot>${basedir}/target/generated-sources/cxf-xjc/</sourceRoot>
<xsdOptions>
<xsdOption>
<xsd>${basedir}/src/main/wsdl/your.xsd</xsd>
<packagename>com.your.package.name</packagename>
<extensionArgs>
<extensionArg>-Xfluent-api</extensionArg>
</extensionArgs>
</xsdOption>
</xsdOptions>
</configuration>
</execution>
</executions>
</plugin>