Java 我们可以为多个包中的一组xsd生成JAXB类吗?
我有一个xsd,其中嵌入了几个子xsd(使用“xsd:include.”)(但每个xsd都属于同一个命名空间)。我被要求在独立的子包中生成jaxb类(每个子XSD有一个子包),而不是一个包 根据我到目前为止读到的内容,我们可以向这些单独的XSD添加Java 我们可以为多个包中的一组xsd生成JAXB类吗?,java,xml,jaxb,jaxb2,Java,Xml,Jaxb,Jaxb2,我有一个xsd,其中嵌入了几个子xsd(使用“xsd:include.”)(但每个xsd都属于同一个命名空间)。我被要求在独立的子包中生成jaxb类(每个子XSD有一个子包),而不是一个包 根据我到目前为止读到的内容,我们可以向这些单独的XSD添加jaxb:schemaBindings,并在单独的包中生成类,只要这些XSD属于不同的名称空间 但在我的例子中,我想做的是在属于相同名称空间的一组XSD的几个子包中创建类。你能帮我用JAXB做这个吗 编辑:我添加了更多关于我的问题的描述,以进一步澄清
jaxb:schemaBindings
,并在单独的包中生成类,只要这些XSD属于不同的名称空间
但在我的例子中,我想做的是在属于相同名称空间的一组XSD的几个子包中创建类。你能帮我用JAXB做这个吗
编辑:我添加了更多关于我的问题的描述,以进一步澄清问题 我的所有XSD都有以下标题。因此相同的名称空间
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:srm="http://www.mycompany.com/srm/"
targetNamespace="http://www.mycompany.com/srm/" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" jaxb:version="2.0" elementFormDefault="qualified"
attributeFormDefault="unqualified" version="1.0">
假设我的模式文件名是A.xsd、B.xsd和C.xsd
- 在C.xsd中,我用上述头定义了一些元素(字符串类型)
- 在B.xsd中,我使用“xsd:include”标记包含了C.xsd,然后使用在C.xsd中定义的复杂类型定义了一个complexType(具有上面提到的相同的头)
- 在A.xsd中,我已经使用“xsd:include”标记包含了B.xsd,然后有一个complexType定义,它使用了在B.xsd中定义的复杂类型
- 要在com.generate.packageA包中生成的与A.xsd相关的JAXB类
- 要在com.generate.packageB包中生成的与B.xsd相关的JAXB类
- 要在com.generate.packageC包中生成的与C.xsd相关的JAXB类