我是这方面的新手,但我正在尝试将Windows应用程序移植到Linux上,并遇到了xmlbeans的问题。我们有一些生成类文件的xsd文件。在Windows上,我会获得Driver.class(2k)
和Driver2.class(10k)
。在Linux上,通过Maven进行相同的构建我将获得Driver.class(10k)
和Driver2.class(2k)
。因此,似乎存在一个排序问题,导致使用这些类的Linux构建应用程序无法编译。使用不兼容类型的驱动程序/驱动程序错误的java代码:
发现:xx.xmlbinding.Driver2
必填:xx.xmlbinding.Driver
不同的xsd文件在文件中具有相同的complexType:
<xsd:complexType name="Driver">
有关如何解决此问题的任何见解?谢谢!
答案 0 :(得分:1)
为什么你有两个具有相同命名空间和名称的驱动程序类型?
如果“驱动程序”类型相同并且在两个架构中重复,请将“驱动程序”移至单独的架构并使用<import>
。如果两个模式和驱动程序类型确实不同,请将一个模式移动到另一个名称空间或为其指定不同的名称。如果无法在不同的步骤中编译这两个模式 - 那么您需要在单独的类加载器中加载它们以避免在运行时发生冲突。