Java 如何关闭JAXB';s优化

Java 如何关闭JAXB';s优化,java,java-8,jaxb,Java,Java 8,Jaxb,使用java1.8,maven-jaxb2-plugin:0.14.0和jaxb2.3.0 当我从XSD文件生成java类时,有些类太简单,JAXB决定跳过它们。相反,它放置了一个@XmlElementWrapper注释 例如: <xs:complexType name="AAAA"> <xs:sequence> <xs:element name="eeee" type="BBBB"

使用
java1.8
maven-jaxb2-plugin:0.14.0
jaxb2.3.0

当我从XSD文件生成java类时,有些类太简单,JAXB决定跳过它们。相反,它放置了一个@XmlElementWrapper注释

例如:

<xs:complexType name="AAAA">
    <xs:sequence>
        <xs:element name="eeee" type="BBBB" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
</xs:complexType>
在这种特殊的情况下,这种优化对我没有帮助,我更希望在设计XSD时看到这些类(例如,AAAA变成了Java类)


有没有办法强迫JAXB生成所有类并停止运行“替换字段”步骤?

我不确定自己是否理解正确。如果公布完整的xsd模型和原始生成的java类/预期类,效果会更好

但是,可能使用reference会对您有所帮助

<xs:complexType name="AAAA">
    <xs:sequence>
        <xsd:element ref="eeee" />
    </xs:sequence>
</xs:complexType>

<xs:complexType name="eeee">
    <xs:sequence>
        <xs:element name="eeee" type="BBBB" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
</xs:complexType>

[INFO]  Replacing field [eeee AAAA]
<xs:complexType name="AAAA">
    <xs:sequence>
        <xsd:element ref="eeee" />
    </xs:sequence>
</xs:complexType>

<xs:complexType name="eeee">
    <xs:sequence>
        <xs:element name="eeee" type="BBBB" minOccurs="0" maxOccurs="unbounded"/>
    </xs:sequence>
</xs:complexType>