使用 jaxb 从 XSD 生成 getter/setter JavaDoc

问题描述 投票:0回答:1

我正在使用

jaxb-maven-plugin
从 XSD 文件生成带有 XML 绑定的 Java 代码。虽然它通常工作得很好,但生成的 setter 和 getter 的 JavaDoc 缺少
xs:annotation /xs:documentation
中的文档。 我什至开始编写自己的 jaxb 插件;但即使在这样的插件中,我似乎也无法访问元素的注释。

有没有直接的方法来做到这一点?

org.jibx
jibx-maven-plugin
似乎是开箱即用的,但我希望能够使用 jaxb-maven-plugin 的扩展和更多最新的依赖项。

XSD 的示例摘录:

<xs:complexType name="Some_Type">
    <xs:sequence>
        <xs:element name="Some_Field" type="BoolType" minOccurs="0" maxOccurs="1">
            <xs:annotation>
                <xs:documentation>Some documentation</xs:documentation>
            </xs:annotation>
        </xs:element>
</xs:complexType>

POM提取物:

<groupId>org.jvnet.jaxb</groupId>
<artifactId>jaxb-maven-plugin</artifactId>
<version>4.0.0</version>
jaxb jibx
1个回答
0
投票

我们目前正在开发 4.0.1 版本的

org.jvnet.jaxb:jaxb-maven-plugin

此版本包括对 4.0.4 jaxb-ri 的更新。
此 4.0.4 jaxb 版本包括对 issue #1708 的修复:从 xsd 文档标签添加 javadoc。

同时,如果您使用插件的简单情况,您可以尝试提供 jaxb-xjc 4.0.4 作为插件的依赖项,并进行以下更改:

  • addIfExistsToEpisodeSchemaBindings
    应设置为 false(因为在 jaxb-ri 中也已修复(问题 #829

另一种可能的解决方案是使用 CXF 中的以下 xjc 插件以及

Xjavadoc
标志:

<dependency>
    <groupId>org.apache.cxf.xjcplugins</groupId>
    <artifactId>cxf-xjc-javadoc</artifactId>
    <version>4.0.0</version>
</dependency>
© www.soinside.com 2019 - 2024. All rights reserved.