使用maven自动生成jaxb.in​​dex文件

时间:2012-04-16 16:10:42

标签: maven xml-serialization jaxb jaxb2

我有一个包含多个java类的包。
我需要用包的类数据读取xml文件 是否有自动方式(使用maven)从包的内容生成ObjectFactory类或jaxb.in​​dex文件?
我知道我可以使用特定的类启动jaxb上下文,但是每次添加新类时都会强制我更改代码。
提前谢谢,
  阿夫纳

2 个答案:

答案 0 :(得分:2)

您必须使用jaxb2-maven插件来生成其他内容。如果类具有适当的注释,则不应该是一个问题。

<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.3.1</version>

见这里:http://mojo.codehaus.org/jaxb2-maven-plugin/

答案 1 :(得分:0)

在做了一些研究后,我选择使用API​​ JAXBContext.newInstance接受一个类数组。我编写了一个短包装器,它接受包名称并使用spring为相关类扫描它们(基于XmlRootElement注释)。然后我使用上面的API来创建jaxb上下文。由于这是一项昂贵的操作,您应该考虑缓存这些上下文(线程安全)以供将来使用。