我想将maven cxf-xjc-plugin
插件用于xsd
个文件中的java类。我有大约30个xsd文件,我必须在xsdOptions
内明确链接每个文件。
是否可以为此插件提供wilcard匹配,以便从找到的任何xsd文件生成?
答案 0 :(得分:8)
不幸的是,这个插件会强制开发人员为每个XSD编写路径。您不能使用通配符指定XSD文件的路径。
但是,对插件进行了未记录的更新,允许指定目录而不是文件列表。因此,如果所有XSD都在同一目录中,则可以指定此目录。我在2015年7月的dkulp@apache.org
来自cxf-commits邮件列表中跟踪了更改为this email:
从XSD文件配置代码生成的便捷选项: 而不必使用
<xsd>
明确列出每个文件 element,现在可以使用新的<xsdDir>
元素代替 指定目录。从此目录中将显示所有*.xsd
个文件 用于代码生成。
此属性is not documented但您可以为版本3.0.5找到它in the source code。
然后您可以进行以下配置:
<xsdOption>
<xsdDir>/path/to/directory/having/all/XSD</xsdDir>
<!-- rest of configuration -->
</xsdOption>
请注意,通过阅读源代码,搜索XSD文件不是递归的:所有XSD必须放在此目录中,而不是放在子目录中,以便插件找到它们。