본문 바로가기
WAS/WEBLOGIC

35. classpath 추가

by coldplayer83 2024. 5. 23.
728x90

웹로직에서 classpath를 추가로 설정하는 방법

=> 웹로직 서버 기동에 필요한 클래스가 load된 후에 추가로 클래스를 load하고자 하는 경우에 사용하는 방법

 

8.1 이상 버전에서 설정하는 방법)

서버 기동 스크립트에서 CLASSPATH 변수를 선언 후, 추가하고자 하는 클래스 경로를 작성

각각의 클래스는 콜론(:)으로 구분

#CLASSPATH
CLASSPATH="${CLASSPATH}:추가할클래스01:추가할클래스02:추가할클래스03"

#export
export CLASSPATH

※ UNIX/LINUX 환경일 경우 기동 스크립트에 export CLASSPATH는 필수로 작성하지 않아도 됨
=> 최종적으로 setDomainEnv.sh에서 export CLASSPATH를 실행하기 때문

 

9.0 이상 버전에서 설정하는 방법)

ex) 기존에 사용중인 ojdbc.jar 대신 다른 버전의 ojdbc.jar를 load해야하는 경우

 

CLASSPATH 대신 EXT_PRE_CLASSPATH를 사용

EXT_PRE_CLASSPATH는 디폴트로 설치된 웹로직 모듈보다 먼저 load되도록 함

 

1) ${DOMAIN_HOME}/lib에 사용할 ojdbc.jar 추가

2) 서버 기동 스크립트에 아래 내용 추가

각각의 클래스는 콜론(:)으로 구분

EXT_PRE_CLASSPATH="${EXT_PRE_CLASSPATH}:/.../ojdbc6-11.2.0.4.jar:b.jar:c.jar"
export EXT_PRE_CLASSPATH

 

서버 기동시 로그에서 해당 ojdbc.jar 파일이 가장 먼저 load된 것을 확인할 수 있음

 

EXT_PRE_CLASSPATH : 기존 클래스패스에 우선하여 설정하는 경우 사용
EXT_POST_CLASSTPAH : 기존 클래스패스 뒤에 설정하는 경우 사용

 

각 소스마다 동일한 jar파일을 업로드하여 관리하기보다는 공통 폴더를 생성하여 jar파일을 업로드하는 방식이 운영 및 관리상 편리함

 


 

구버전 웹로직의 경우 oracle_common/common/bin/commExtEvn.sh 스크립트를 수정하여 클래스 패스를 설정하는 경우가 있는데 이 방식은 권장하지 않음

해당 파일이 수정되어 있는 경우 웹로직 패치시 정상 패치가 되지 않을 수 있음