xjc逆包名称顺序

时间:2012-05-16 14:30:27

标签: jaxb xjc

我运行以下命令

java -jar "C:\Program Files\eclipse\plugins\org.jvnet.jaxbw.eclipse_1.1.0\lib\jaxb-xjc.jar" -d src  -catalog xsd\catalog.cat xsd\componentsData.xsd 

xsd \ componentsData.xsd包含以下行:

xmlns:txtColor="com.my.company.product.jaxb.TextColor"
xmlns="com.my.company.product.jaxb.componentsData"
targetNamespace="com.my.company.product.jaxb.componentsData"

<xsd:import
schemaLocation="TextColor.xsd"
namespace="com.my.company.product.jaxb.TextColor"/>

xsd \ TextColor.xsd包含以下内容

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
         xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" jaxb:version="2.0"
         xmlns="com.my.company.product.jaxb.TextColor"
         targetNamespace="com.my.company.product.jaxb.TextColor"
         >

这是我的目录:

<!DOCTYPE catalog
  PUBLIC "-//OASIS//DTD Entity Resolution XML Catalog V1.0//EN"
       "http://www.oasis-open.org/committees/entity/release/1.0/catalog.dtd">
<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">

<system
    systemId="com.my.company.product.jaxb.TextColor.TextColor.xsd"
    uri="TextColor"/>

我的文件是在以下路径中生成的 - 为什么要反转订单?: componentsData.jaxb.product.company.my.com

TextColor.jaxb.product.company.my.com

如果我添加以下参数文件以正确的顺序生成,但似乎没有考虑catalog.cat

-p com.my.company.product.jaxb.componentsData

1 个答案:

答案 0 :(得分:0)

我需要添加一个绑定文件(-b选项和xjc)

<jaxb:bindings
   xmlns:jaxb="http://java.sun.com/xml/ns/jaxb" 
   xmlns:xsd="http://www.w3.org/2001/XMLSchema"
   version="2.1">

<jaxb:bindings schemaLocation="componentsData.xsd" node="/xsd:schema">
    <jaxb:schemaBindings>
        <jaxb:package name="com.my.company.product.jaxb.componentsData"/>
    </jaxb:schemaBindings>
</jaxb:bindings>

<jaxb:bindings schemaLocation="TextColor.xsd" node="/xsd:schema">
    <jaxb:schemaBindings>
        <jaxb:package name="com.my.company.product.jaxb.TextColor"/>
    </jaxb:schemaBindings>
</jaxb:bindings>
</jaxb:bindings>

但我还有一个问题: 我开始使用xjc,因为我没有成功使用eclipse,我怎么能用eclipse gui