2

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

4

2 回答 2

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/

于 2012-04-17T11:27:19.737 回答
0

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

于 2012-04-19T13:14:09.507 回答