3.4. モジュールが暗黙的にロードされないようにする

暗黙的な依存関係がロードされないようデプロイ可能なアプリケーションを設定できます。これは、アプリケーションサーバーにより提供される暗黙的な依存関係とは異なるバージョンのライブラリーやフレームワークがアプリケーションに含まれる場合に役に立つことがあります。

要件

  • 暗黙的な依存関係を除外するソフトウェアプロジェクト。
  • 除外するモジュール名を知っている必要があります。暗黙的な依存関係のリストや状態は「暗黙的なモジュール依存関係」を参照してください。

jboss-deployment-structure.xml への依存関係除外設定の追加

  1. アプリケーションに jboss-deployment-structure.xml という名前のファイルがない場合は、このファイルを新規作成し、プロジェクトに追加します。このファイルは <jboss-deployment-structure> がルート要素の XML ファイルです。

    <jboss-deployment-structure>
    
    </jboss-deployment-structure>

    Web アプリケーション (WAR) では、このファイルを WEB-INF/ ディレクトリーに追加します。EJB アーカイブ (JAR) では、このファイルを META-INF/ ディレクトリーに追加します。

  2. <deployment> 要素をドキュメントルート内に作成し、その中に <exclusions> 要素を作成します。

    <deployment>
       <exclusions>
    
       </exclusions>
    </deployment>
  3. exclusions 要素内で、除外する各モジュールに対して <module> 要素を追加します。name 属性をモジュールの名前に設定します。

    <module name="org.javassist" />

    例: 2 つのモジュールの除外

    <jboss-deployment-structure>
       <deployment>
          <exclusions>
             <module name="org.javassist" />
             <module name="org.dom4j" />
          </exclusions>
       </deployment>
    </jboss-deployment-structure>