일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 백트래킹
- 딥러닝
- Python
- 머신러닝
- 라인
- C++
- 파이썬
- 릿코드
- DP
- 프로그래밍언어론
- 라인플러스
- 스프링 프레임워크
- 벤쿠버
- leetcode
- Spring Framework
- 프로그래머스
- 모두를 위한 딥러닝
- BFS
- C/C++
- Java
- 스타벅스
- 다이나믹프로그래밍
- 알고리즘
- 시애틀
- spring
- STL
- dfs
- 백준
- jvm
- binary search
Archives
- Today
- Total
케이스윔의 개발 블로그
[JAVA] classpath 를 알아보자 본문
classpath란 무엇인가?
(class search path 라고 하기도 한다고 함)
- 말그대로 클래스를 찾기 위한 경로
- JVM이 프로그램을 실행할 때 클래스 파일을 찾기 위한 기준이 되는 파일 경로
- 자바 런타임 환경에서 클래스와 다른 리소스 파일을 찾기위한 파일 경로
사용법(?)
- JDK tool에 의해서 -classpath 옵션을 셋팅하거나, CLASSPATH 환경변수를 통해 셋팅할 수 있다.
- -classpath 옵션을 사용하면 다른 어플리케이션에 영향을 주지 않고 각 어플리케이션 각각 셋팅을 할 수 있어서 더욱 선호되는 방법이다.
sdkTool -classpath classpath1;classpath2...
set CLASSPATH=classpath1;classpath2...
sdkTool: command-line tool 예를 들어 java, javac, apt ...
classpath1;classpath2;.. : .jar, .zip 또는 .class 파일의 파일 경로를 의미
경로는 어떻게 표기하는가?
- .class 파일을 포함하고 있는 .jar, .zip파일일 경우에는 classpath는 .zip 이나 .jar 파일이름이어야 한다.
- .class 파일을 포함하고 있는 패키지가 없는 파일일 경우에는 파일 경로는 .class 파일을 포함하고 있는 디렉토리명으로 표기한다.
- .class 파일을 포함하고 있는 이름이 있는 패키지의 파일이라면 root 패키지를 포함하고 있는 파일 경로로 표기한다.
- 디폴트 classpath는 현재 디렉토리이다. 환경변수나 옵션을 사용하게 되면 이 디폴트 설정이 override 되기 때문에 현재 디렉토리를 포함하고 싶다면 "." 을 새로운 셋팅에 포함해야한다.
너무나 인텔리제이 환경에서 개발하는게 익숙해진 나머지.. 오랜만에 커맨드라인으로 이것저것 실행하다가 classpath 를 간단히 정리해보았는데 아래의 공식 도큐먼트를 직접 읽어보면 더 이해가 쉬울 수 있다!
https://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html
Setting the class path
Setting the class path Synopsis The class path is the path that the Java runtime environment searches for classes and other resource files. The class search path (more commonly known by the shorter name, "class path") can be set using either the -classpath
docs.oracle.com
'Study' 카테고리의 다른 글
[github] Actions - workflows 를 자동화/개인화/실행 하다. (1) (0) | 2022.03.13 |
---|---|
[도서리뷰] AI로 일하는 기술(저자 장동인) (0) | 2022.02.19 |
[JAVA] new ArrayList(); vs Lists.newArrayList(); 뭘 써야할까? (0) | 2022.02.16 |
[PL] Garbage collection(가비지 컬렉션) (0) | 2018.12.16 |
[PL] Exception handling(예외 처리) (0) | 2018.12.15 |
Comments