Spring Object-Xml マッピングを Jibx で使用して、一部の xsd ファイルを Java ソース ファイルに変換します。Jibx は、ビルド プロセスで jibx-maven-plugin によって呼び出されます。私のスキーマ ファイル (.xsd) には名前空間 "abcom" がありますが、Java コードの残りの部分がそのように編成されているため、生成された Java ソースをパッケージ "a.com" の下に配置したいと考えています。
Java パッケージは、xsd の名前空間に基づいて自動的に決定されることに気付きました。したがって、質問: 名前空間がスキーマ ファイルで定義されている場合に、Jibx Maven プラグインを使用する場合、xsd->Java 変換で出力 Java ソース ファイルの Java パッケージを設定することは可能ですか?
これまでに提案されたソリューション:
1) ビルド実行を使用する
以下提案。
問題:
- xsd->Java 変換はビルドごとに実行されます。手動で実行したい、または xml スキーマを変更したときにのみ実行されます。
- この設定では、customization.xml の prefer-inline 属性の動作が異なり、オブジェクト参照の属性がインライン化されます。
2) カスタマイズ xml を使用して Java パッケージを設定する
ここで提案: Jibx Codegen: カスタマイズ ファイル - スキーマごとのパッケージ
問題: 機能しませんでした。
3) モジュラー スキーマ
ここで提案: Jibx Maven プラグイン: 異なるビルド実行で変換されたときのスキーマ間の相互参照
問題: スキーマごとに 1 つの pom をセットアップし、スキーマごとに jar を生成し、その jar を他のスキーマにインポートするには複雑すぎます。
名前空間が xml スキーマで定義されているときに、これらの問題を解決し、xsd->Java 変換でカスタム Java パッケージを設定できた人はいますか?
前もって感謝します。