我正在尝试制作JAXB绑定文件。我有一个XSD,其中有三个以上的XSD导入链。
所以它就像A-> B-> C-> D
在配置下制作Maven文件时,我在pom文件的“源”标签中声明了唯一的A。
但是冲突在文件C中。这是我的绑定文件:
<?xml version="1.0" encoding="UTF-8"?>
<jxb:bindings xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:jxb="http://java.sun.com/xml/ns/jaxb" xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd" version="2.1">
<jxb:globalBindings generateIsSetMethod="true" />
<jxb:bindings schemaLocation="../Work/XSDFiles/APIDefinition.xsd">
<jxb:bindings node="//xsd:complexType[@name='MPLS-VPNListItem']">
<jxb:class name="MPLS_VPNListItem" />
</jxb:bindings>
</jxb:bindings>
</jxb:bindings>
APIDefinition.xsd是我的文件C。运行它时出现错误:
org.xml.sax.SAXParseException: A class/interface with the same name "com.advantis.sch.api3pc4.xmlschema.api.MPLSVPNListItem" is already in use. Use a class customization to resolve this conflict.
我还尝试将主文件(A)放在schemaLocation中,甚至失败了,甚至说根本找不到该标签。
我的绑定文件和XSD文件位于不同的文件夹中。
您能帮我这个忙吗?如果您需要更多信息,请告诉我。