A と B の 2 つのプロジェクトがあるとします。重要な場合に備えて、Java プロジェクトです。
プロジェクト A には、コアの型と要素を表す一連の XSD ファイルが含まれています。それらはすべて、たとえば「定義」と呼ばれるパッケージに配置されます。これは に組み込まれproject-a.jar
ます。
プロジェクト B は拡張プロジェクトを表し、独自の型と要素を定義できます。新しいスキーマを作成し、「definition.extension」パッケージに配置しました。これは に組み込まれproject-b.jar
ます。
さて、プロジェクト B の XSD の場合、正確には何を として入力する必要schemaLocation
がありinclude
ますか?
schemaLocation="../core-types.xsd"
うまくいきませんでした(URIが必要なのはわかっています)が、これに対する適切なまたは標準的なアプローチは正確には何ですか?Google は、これを処理するための実際の正しい方法は何かについて、明確で標準的なアプローチであるというこの質問をする人が増えていることを発見しました。
実行時にプログラムで調整したことはあり得ません...または、コンパイル中にschemaLocation
動的に置き換えるビルドステップ/スクリプトが必要になることはありません...そうですか?schemaLocation
「共有の場所に置く」などの答えは探していません。ハードコードされた参照の代わりに相対参照を使用する開発環境に沿ったものを探しています。
参考までに、IDE 固有のアプローチがある場合に備えて、IntelliJ IDEA を使用しています。