Java schemagen.exe不';t跳过@xmltransive注释类

Java schemagen.exe不';t跳过@xmltransive注释类,java,xsd,jaxb,Java,Xsd,Jaxb,我对XmlAdapter类进行了如下注释: @XmlTransient public class DateTimeXmlAdapter extends XmlAdapter<String, DateTime> { 我认为这是正确的。看起来您已经告诉schemagen为java包中的所有内容生成模式类型,包括XmlAdapter子类。因此,它会看到标记为@xmltransive的适配器类,因此不会为它生成模式类型。但是,它确实为XmlAdapter本身生成了一个模式类型 您需要更改调

我对XmlAdapter类进行了如下注释:

@XmlTransient
public class DateTimeXmlAdapter extends XmlAdapter<String, DateTime> {

我认为这是正确的。

看起来您已经告诉
schemagen
为java包中的所有内容生成模式类型,包括
XmlAdapter
子类。因此,它会看到标记为
@xmltransive
的适配器类,因此不会为它生成模式类型。但是,它确实为
XmlAdapter
本身生成了一个模式类型

您需要更改调用
schemagen
的方式,以便将适配器类排除在代码生成之外。
@xmltransive
在这里不合适,所以从适配器类中删除它

<xs:complexType name="xmlAdapter" abstract="true">
    <xs:sequence/>
  </xs:complexType>
@XmlElement(name="StartDatetime")
@XmlJavaTypeAdapter(DateTimeXmlAdapter.class)
protected DateTime startDatetime;