【发布时间】:2014-11-19 20:08:51
【问题描述】:
由于我需要编译的 XSD 存在各种问题(在其他 SO 帖子中描述),我有一个绑定文件和一个本地扩展架构。以下命令行可以正常工作,但我无法找出正确的 pom.xml 配置来模仿这个:
xjc -nv src/main/resources/TCIP_4_0_0_Final.xsd src/main/resources/local/ObaCcLocationReport.xsd -b src/main/resources/local/rename.xjb -d target
主要是,我如何指定多个 XSD?我试过了:
<schemaDirectory>src/main/resources</schemaDirectory>
<schemaIncludes>
<include>TCIP_4_0_0_Final.xsd</include>
<include>local/ObaCcLocationReport.xsd</include>
</schemaIncludes>
但它似乎忽略了第二个include。
我还尝试了以下变化:
<schema>
<fileset>
<directory>src/main/resources</directory>
<includes>
<include>TCIP_4_0_0_Final.xsd</include>
<include>local/ObaCcLocationReport.xsd</include>
</includes>
</fileset>
</schema>
没有成功。有什么建议吗?
编辑
这是一种解决方法,但并不理想:
由于ObaCcLocationReport.xsd 依赖于作为TCIP_4_0_0_Final.xsd 一部分编译的架构,我只需要确保它在之后 编译,并且它似乎按文件路径顺序处理文件。所以我将ObaCcLocationReport.xsd 放入x 子文件夹并将pom.xml 更改为:
<schemaDirectory>src/main/resources</schemaDirectory>
<schemaIncludes>
<include>TCIP_4_0_0_Final.xsd</include>
<include>x/ObaCcLocationReport.xsd</include>
</schemaIncludes>
这编译了架构并正确生成了 Java 文件。
【问题讨论】:
标签: maven jaxb xjc maven-jaxb2-plugin