我有两个Java项目,都基于模式定义生成Java类,我使用xjc来创建类.
我的第二个项目依赖于第一个项目中的一个类,特别是我想在第二个项目中生成的一个类需要使用第一个项目中的一个类.
要在模式级别实现此依赖性,我使用一个简单的xsd:import方法将命名空间映射到特定模式.
JAXB在这种情况下运行得很好,除了它还在第二个项目中生成第一个项目的类型.所以跑完后有这样的事情:
Project A
+-- com.foo.bar
+-- TypeA
Project B
+-- com.foo.asdf
+-- TypeB
+-- com.foo.bar
+-- TypeA
第二个"TypeA"是不受欢迎的,我想从不首先生成它.如何指示JAXB不生成由于import语句而找到的"TypeA"类?
将其自定义为DOM元素(<jaxb:dom/>).
<xs:element name="a" type="a:Type">
<xs:annotation>
<xs:appinfo>
<jaxb:dom/>
</xs:appinfo>
</xs:annotation>
</xs:element>
Run Code Online (Sandbox Code Playgroud)
您可能还对单独/情节模式编译感兴趣.
| 归档时间: |
|
| 查看次数: |
3707 次 |
| 最近记录: |