2

3 つの xsd ファイルがあります。

  • a.xsd
  • b.xsd
  • 共有.xsd

shared.xsd は、a.xsd と b.xsd の両方にインポートされます。

<xs:import schemaLocation="shared.xsd"/>

shared.xsd の定義

<xs:element name="item">
<xs:complexType> ....

xjc を使用して Java コードを生成すると、a.xsd と b.xsd が異なるパッケージに生成され、各パッケージでアイテム用に個別の Java クラスが生成されます。item に対して単一の共有クラスを持ち、それを a と b に使用させるにはどうすればよいでしょうか?

4

2 に答える 2

0

@Chris Dailが言ったことを実行するか、パッケージを作成するための名前空間に見えるため、1つのスキーマファイルにマージa.xsdします。b.xsdJAXB

于 2010-05-27T17:51:40.857 に答える
0

生成されたファイルが配置されるパッケージをオーバーライドできます。これにより、両方の共有オブジェクトが同じ場所に移動できるようになります。

xjc -p com.test a.xsd b.xsd shared.xsd

それがあなたが探しているものだと思います。

于 2010-05-27T17:37:09.433 に答える