異なるアプリケーションでグローバルライブラリを使用する1つの方法は、モジュールとして利用できるようにすることで実現できます。そのため、サーバープロバイダとして提供しているライブラリでモジュールを拡張します。
例: は、モジュール名とmain
サブディレクトリ(例えばmodules/commons/test/main
)でフォルダを作成し、すべてのアプリケーションにごtest.jar
が利用できるようにします。
そこにライブラリを置き、module.xml
という名前のモジュール記述ファイルを置きます。 例内容:
<module xmlns="urn:jboss:module:1.0" name="commons.test">
<resources>
<resource-root path="test.jar"/>
</resources>
</module>
今、ライブラリは、すべてのアプリケーションに使用可能です。 モジュールにアクセスするには、アプリケーションでマニフェストの依存関係を定義する必要があります。
アプリケーションMANIFEST.MF:
Dependencies: commons.test
これはまた、ビルド時のmavenで行うことができます。 詳細についてはhttps://docs.jboss.org/author/display/AS7/Class+Loading+in+AS7をご確認ください
ご自身でサーバーを変更していることにご注意ください。あなたのモジュールを使っているすべてのアプリケーションはそれに依存しています。モジュールcommons.test
への依存関係を持つアプリケーションは、このモジュールが提供されていないサーバーには展開されません。
これはサーバー(グローバル)モジュールに触れることなく同じことが可能ですか?つまり、EARの内部にモジュールを作成しますか? – Sriram
各ライブラリを指定するのではなく、ワイルドカードの可能性がありますか? – Inv3r53