是否有一种方法可以使maven-jaxb22-plugin
生成这些注释而无需借助<xjc:simple/>
标志?
上下文:
<xjc:simple/>
使非常有用的@XmlRootElement
注释自动生成,而无需任何其他配置。不幸的是,它还会创建多个方法名称,更重要的是,它并不总是使用XSD中指定的类的确切类型名称。
我知道我们可以使用ObjectFactory
创建JAXBElement
,它提供与@XmlRootElement
批注相同的信息,但是人们总是忘记这样做,并且错误只会在尝试将对象写入(封送)到xml中时运行时,甚至在实际使用了相关元素的情况下也是如此。
我也知道可以指示插件手动执行此操作,但是这种方法无法将我们扩展到庞大的多文件xsd模式(我们无法对其进行编辑,因此必须进入bindings.xml):
<jaxb:bindings node="//xs:complexType[@name='personType']">
<annox:annotate>
<annox:annotate annox:class="javax.xml.bind.annotation.XmlRootElement" name="person"/>
</annox:annotate>
</jaxb:bindings>