Jibx Codegen:自定义文件 - 每个模式的包

时间:2012-08-12 00:07:46

标签: java maven jibx

我在项目中使用Jibx maven插件从XML模式(xsd)文件生成Java源代码。我已经在pom.xml中配置了插件以使用自定义xml。在这个xml中,我为每个模式定义了一个Java包,如下所示:

<schema-set>
    <schema name="schema1.xsd" package="com.myApp.jibxgenerated.schema.schema1"/>
    <schema name="schema2.xsd" package="com.myApp.jibxgenerated.schema.schema2" includes="element1" />
    <schema name="schema3.xsd" package="com.myApp.jibxgenerated.schema.schema3" includes="element1 element2" />
</schema-set>

我在这些模式中定义了名称空间。输出的Java源文件仍然使用模式中定义的命名空间来创建Java包,忽略customization.xml中的package属性。

我知道正在读取customization.xml并在源代码生成中使用它,因为还有一些其他自定义项可以正常工作。

这是一个错误还是我在这里做错了什么?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

http://jibx.sourceforge.net/fromschema/codegen-customs.html,他们在外部schema-set内嵌套多个schema-set。试试这个:

<schema-set>
  <schema-set package="com.myApp.jibxgenerated.schema.schema1">
    <schema name="schema1.xsd"/>
  </schema-set>
  <schema-set package="com.myApp.jibxgenerated.schema.schema2">
    <schema name="schema2.xsd" includes="element1" />
  </schema-set>
  <schema-set package="com.myApp.jibxgenerated.schema.schema3">
    <schema name="schema3.xsd" includes="element1 element2" />
  </schema-set>
</schema-set>