본문 바로가기
프로그래밍

리눅스에서 java main 실행

by 탁구치는 개발자 2013. 2. 14.

#!/bin/sh


LIB_CLASSPATH="/svc/idp/was/app/Altibase.jar"

LIB_CLASSPATH="/svc/idp/was/app/idpWebApp/WEB-INF/classes:${LIB_CLASSPATH}"


echo "$LIB_CLASSPATH"


java -cp ${LIB_CLASSPATH}:. DecodeSocialNumber


리눅스에 특정 class 파일을 업로드한 후 커맨드 명령창에서 class를 실행할 일이 생겼다.

DB에서 데이터 조회 후 파일로 데이터를 쓰는 작업인데 이클립스에서만 작업하다가 커맨드 명령창에서 자바 main을 실행하려고 하니 시행 착오가 많아 기록해둔다.


DecodeSocialNumber 클래스에서는 아래와 같이 import문으로 다른 class를 사용하는데 이럴 때에는 상위 디렉토리를 classpath로 지정해 주면 된다.

com.skt.idp.common.crypto.seed.Cryptology.class의 패키지를 제외한 상위 디렉토리는 /svc/idp/was/app/idpWebApp/WEB-INF/classes 이다.

import com.skt.idp.common.crypto.seed.Cryptology;


. 은 현재 디렉토리를 classpath로 지정하겠다는 의미이며 DecodeSocialNumber.class를 실행하기 위해서 DecodeSocialNumber.class 파일이 위치한 디렉토리를 클래스 패스로 지정하겠다는 의미이다.