본문 바로가기
WAS/JBOSS_WILDFLY

25. jboss-deployment-structure.xml

by coldplayer83 2025. 10. 21.
728x90
반응형

jboss-deployment-structure.xml

클래스 로딩 및 모듈 종속성을 세밀하게 제어하는 데 사용되는 JBoss 전용 배포 설명자

배포 단위(WAR, EAR 등) 내에서 어떤 모듈(Module) 을 로딩할지, 어떤 의존성을 차단(exclude) 할지를 지정하는 설정

 

1. JBoss 내부 모듈 충돌 방지

애플리케이션에서 log4j, jackson, hibernate 같은 라이브러리를 직접 포함했는데 JBoss에도 같은 모듈이 이미 내장되어 있을 때 jboss의 모듈 제외 설정

<jboss-deployment-structure>
    <deployment>
        <exclusions>
            <module name="org.apache.log4j"/>
            <module name="com.fasterxml.jackson.core.jackson-databind"/>
        </exclusions>
    </deployment>
</jboss-deployment-structure>

 

2. JBoss 모듈을 직접 참조해야 할 때

jboss-ejb-api_3.2_spec, org.postgresql, javax.mail 등 서버에 설치된 모듈을 애플리케이션 classpath에 추가해야 할 때

<jboss-deployment-structure>
    <deployment>
        <dependencies>
            <module name="org.postgresql" />
        </dependencies>
    </deployment>
</jboss-deployment-structure>

 

3. EAR 구조일 때 모듈 공유 제어

EAR 안에 여러 WAR/JAR이 있을 때 서로 classpath를 공유하지 않도록 격리(isolation) 하거나 반대로 공유하도록 설정할 때

<jboss-deployment-structure>
    <ear-subdeployments-isolated>true</ear-subdeployments-isolated>
</jboss-deployment-structure>

 

일반적인 경우에는 불필요
단일 WAR 애플리케이션에서 JBoss 내장 모듈과 충돌이 없고, 외부 라이브러리를 모두 WEB-INF/lib에 포함했다면 jboss-deployment-structure.xml은 없어도 됨

📁 위치
WAR : /WEB-INF/jboss-deployment-structure.xml
EAR : /META-INF/jboss-deployment-structure.xml

728x90
반응형

'WAS > JBOSS_WILDFLY' 카테고리의 다른 글

27. Access log 설정  (0) 2025.11.24
26. jboss-cli.sh connection  (0) 2025.11.03
24. instance id 설정하기  (0) 2025.09.15
23. [JBoss 6, 7]웹서버 없이 세션 복제 테스트 하기  (0) 2025.09.11
22. [JBoss 7] JDK 17 update  (0) 2025.09.05