1. CLASSPATH 확인
1) 코드
class Practice {
public static void main(String[] args) throws Exception {
/* Class path를 한줄로 확인 가능 */
System.out.println(System.getProperty("java.class.path"));
/* Class path를 여러 줄로 나누어 확인 가능 (Windows)*/
for(String element : System.getProperty("java.class.path").split(";")) {
System.out.println(element);
}
/* Class path를 여러 줄로 나누어 확인 가능 (Linux)*/
for(String element : System.getProperty("java.class.path").split(":")) {
System.out.println(element);
}
}
}
2) Bash (리눅스 커맨드창)
$ echo $CLASSPATH
$ env | grep CLASSPATH
2. CLASSPATH 등록
1) 여러 명의 사용자가 공동으로 사용하고자 할 때 (시스템 환경변수, system environment variable)
root 계정으로 /etc/profile 편집
source "/path/classpath.txt"
export CLASSPATH
/path/classpath.txt에는 아래와 같이 넣어준 후 source /etc/profile
CLASSPATH=$CLASSPATH:path1:path2:path3/test.jar
2) 한 명의 사용자가 사용하고자 할 때 (사용자 환경변수, user environment variable)
export CLASSPATH=$CLASSPATH:path1:path2:path3/test.jar
이를 ~/.bashrc 혹은 ~/.bash_profile 파일 끝에 붙여넣어 준 후 source 파일명 (export를 그냥 명령어 창에 입력하면 현재 터미널에만 1회성으로 적용된다).
※ Jar 파일 여러 개가 든 폴더를 등록할 때
Wildcard인 "*"을 사용 (ex. "path/*")
주의해야할 점은 path/*.jar이 아니라 path/* 이다.
3. CLASSPATH 사용
따로 CLASSPATH를 등록하지 않더라도 -cp 옵션을 통해 CLASSPATH를 지정할 수 있다.
$ java -cp /java/class/:/java/lib/* test.Test
이때 주의해야할 점은 -cp 옵션을 사용하면 기존에 등록된 CLASSPATH는 모두 무시하고 옵션으로 받는 경로만 CLASSPATH로 사용한다.
Reference
- stackoverflow.com/questions/11459664/how-to-add-multiple-jar-files-in-classpath-in-linux
- stackoverflow.com/questions/53923411/permanently-set-environment-variables-for-multiple-users
- m.blog.naver.com/PostView.nhn?blogId=qbxlvnf11&logNo=221409147463&proxyReferer=https:%2F%2Fwww.google.com%2F
728x90
반응형
'Computer Science > Java' 카테고리의 다른 글
[Java] Ant Build를 통한 local에서 server로의 자바 클래스 파일 이동 (0) | 2021.08.12 |
---|---|
[Java] 자바 기본 개념 및 클래스 파일 실행 | 이클립스 (0) | 2021.08.04 |
[Java] 작업 진행 상황을 자바 코드로 표시하는 방법 (0) | 2021.02.23 |
[SVN] 이클립스에서 svn:ignore 설정 방법 (0) | 2021.02.10 |
[Java] Class의 인스턴스를 함수의 파라미터로 넣어주었을 때 (0) | 2021.02.10 |