2

我在 jaxB 类生成中遇到了一些对象冲突,我知道我可以做一些事情,比如使用自定义绑定文件来解决冲突,但是,这种冲突发生在使用不同命名空间的单独文件中的两个同名元素之间。他们有不同的命名空间这一事实不就足够了吗?

parsing a schema...
compiling a schema...
[ERROR] A class/interface with the same name "code.NameType" is already in use. Use a class customization to resolve this conflict.
  line 215 of file:/C:/Workspace/schemaGen/SchemaGen/src/schemas/Core.xsd

[ERROR] (Relevant to above error) another "NameType" is generated from here.
  line 47 of file:/C:/Workspace/schemaGen/SchemaGen/src/schemas/SearchCore.xsd
4

1 回答 1

1

冲突不是命名空间的问题,而是 QName 生成的问题。那就是他们发生冲突的地方。

我发现有 3 个选项可以解决此问题:

  1. 将 XSD 中的类重命名为其他名称以避免该问题。
  2. 创建绑定文件以在生成时重新映射类
  3. 从下到上生成类,制作剧集文件并每次指定一个新包,以便对象不会在同一个包中发生冲突。
于 2012-12-05T00:11:02.103 回答