본문 바로가기

Apache / Tomcat

Tomcat Classpath 추가하는 방법

반응형

개발을 하는 어느날 연계사로부터 새로운 모듈을 받았다. 해당 모듈을 적용할때 주의사항은 단 하나.
WEB-INF/lib 또는 TOMCAT_HOME/lib 에 해당 모듈을 넣지말고 별도로 classpath에 적용할것.

그래서 별 생각없이 개발PC(윈도우) CLASSPATH 에 해당 모듈을 추가하고 커맨드창에서 모듈을 실행하니 잘 나온다.
그런데 해당 모듈을 웹 프로젝트에 적용하니 모듈 호출이 안된다. 어라? 내가 뭘 잘못했나 한참을 생각했다.

결국은 톰캣 자체 CLASSPATH에 추가를 한 뒤 해결할 수 있었으나 이 찜찜함.
그래서 열심히 구글링을 해 본 결과 톰캣은 OS 환경변수를 그냥 무시해 버린단다.

어찌되었든 톰캣 TOMCAT_HOME/bin/catalina.sh(bat) 파일에 CLASSPATH를 추가해주거나 TOMCAT_HOME/conf/catalina.properties 에 common.loader를 추가해 주면 된다.

난 common.loader에 추가해 주었다. 특정 파일이나 디렉토리를 지정하면 된다.

common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,/home/tour/test/class



개발PC에선 이클립스에 톰캣 플러그인을 사용하여 개발중인데 톰캣 JVM 설정에 보면 classpath를 지정하는 부분이 있다.
이클립스에 톰켓 플러그인을 사용중이라면 해당 부분에 classpath를 등록하자