3.4. 암시적으로 로드되는 모듈 방지

암시적 종속성이 로드되지 않도록 배포 가능한 애플리케이션을 구성할 수 있습니다. 이는 애플리케이션에 암시적 종속성으로 애플리케이션 서버에서 제공하는 라이브러리 또는 프레임워크와 다른 버전의 라이브러리 또는 프레임워크를 포함하는 경우 유용할 수 있습니다.

사전 요구 사항

jboss-deployment-structure.xml에 종속성 제외 구성 추가

  1. 애플리케이션에 없는 경우 jboss-deployment-structure.xml 이라는 새 파일을 생성하여 프로젝트에 추가합니다. <jboss-deployment-structure> 의 루트 요소가 있는 XML 파일입니다.

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

    웹 애플리케이션(WAR)의 경우 이 파일을 WEB-INF/ 디렉토리에 추가합니다. Jakarta Enterprise Beans 아카이브(JAR)의 경우 META-INF/ 디렉터리에 추가합니다.

  2. 문서 루트에 <deployment> 요소와 그 안에 <exclusions> 요소를 만듭니다.

    <deployment>
       <exclusions>
    
       </exclusions>
    </deployment>
  3. 제외 요소 내에 제외할 각 모듈에 대해 <module> 요소를 추가합니다. name 속성을 모듈의 이름으로 설정합니다.

    <module name="org.javassist" />

    예제: 두 개의 모듈 제외

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