JAXB の XJC ユーティリティは間違いなくインポートとインクルードをサポートしています。最初に確認することは、インポート/インクルード ファイルに解決可能な有効なシステム ID が含まれていることです。そうでない場合は、XJC がセカンダリ XML スキーマを見つけられるように、スキーマ カタログを利用できます。
スキーマ カタログ - TR9401 形式
-- Match address.xsd by URL --
SYSTEM "http://www.example.com/address/address.xsd" "imports/address.xsd"
-- Match phone-number.xsd by namespace URI --
PUBLIC "http://www.example.com/phone-number" "imports/phone-number.xsd"
スキーマ カタログ - OASIS XML カタログ形式
<!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="http://www.example.com/address/address.xsd"
uri="imports/address.xsd"/>
<public
publicId="http://www.example.com/phone-number"
uri="imports/phone-number.xsd"/>
</catalog>
XJCコール
スキーマ カタログは、-catalog
フラグを使用して参照されます。
xjc -d out -catalog catalog.cat customer.xsd
詳細については