質問: 1つのWildfly上に、複数のwarファイルをデプロイしています。 例えば、こんな構成だとします。 ``` hoge.war - Hoge.jar - X-api.jar - X-impl.jar fuga.war - Fuga.jar - X-api.jar ``` X-impl.jarは、X-api.jarの中にあるinterfaceの実装クラスが入っています。 Hoge.jarとFuga.jarの中のクラスは、X-apiの中にあるinterfaceを@Injectで使っています。 ここで、fuga.warはX-apiを含んでいますが、その実装を持っていません。 実装があるのはhoge.warの中です。 もちろんfuga.warの中にX-impl.jarを入れれば動くのですが、同じモジュールを重複していれることになるので、それは避けたいと思っています。 (バージョン管理の面で、片方を更新し忘れたりとか・・・) どうにかして、X-impl.jarを1つだけにしたいのですが、可能でしょうか? 方向性としては、以下の2つのアプローチかなと思ってはいますが、いずれもやり方が分かりません。 1. fuga.warからhoge.warの中にあるX-impl.jarを参照する 2. X-impl.jarを双方のwarから取り出して独立させ、双方のwarから参照する
回答: 2のX-impl.jarを双方のwarから取り出して独立させるパターンで standalone/lib/ext の下に置くか Global Modulesを設定するのではいかがでしょうか?