추가 클래스 경로 옵션을 사용하여 JAR 실행: "-cp" 대 "-jar" 딜레마 이해
JAR 파일을 실행할 때 , 개발자는 JAR 자체에 포함된 것 이상의 추가 라이브러리나 클래스에 액세스해야 할 수도 있습니다. 이 문제를 해결하기 위해 Java는 -cp(classpath) 또는 -jar 명령줄 플래그를 사용하는 두 가지 옵션을 제공합니다.
-cp 대 -jar: 상호 배제 사례
-cp와 -jar는 서로 다른 용도로 사용되며 결합할 수 없다는 점에 유의하는 것이 중요합니다. -jar 플래그는 실행할 JAR 파일을 지정하고, -cp는 추가 클래스 및 종속성을 찾는 데 사용되는 클래스 경로를 정의합니다.
-jar 옵션:
필요한 종속성은 JAR 파일 내에 캡슐화됩니다. 또는 클래스 경로에서 검색할 수 있는 경우 -jar 플래그만 사용하면 충분합니다. JVM(Java Virtual Machine)은 JAR의 매니페스트 파일에 지정된 대로 JAR과 클래스 경로 모두에서 클래스를 자동으로 로드합니다.
-cp 옵션:
외부 종속성이 JAR에 포함되지 않거나 클래스 경로에서 찾을 수 없는 경우 -cp 옵션을 사용해야 합니다. 이를 통해 개발자는 기본 JAR과 필요한 추가 JAR 또는 클래스 파일이 포함된 디렉터리를 포함하여 클래스 경로를 명시적으로 정의할 수 있습니다. 다음 구문은 이를 보여줍니다.
java -cp 'MyProgram.jar:libs/*' main.Main
이 예에서 MyProgram.jar은 기본 JAR을 지정하고, libs/*(dir/* 구문 사용)는 libs 하위 디렉터리의 모든 JAR을 클래스 경로에 추가합니다. main.Main은 프로그램의 진입점(메인 클래스)을 나타냅니다.
대안: JAR 매니페스트 파일 수정
또는 Ant의
개발자는 -cp와 -jar의 차이점과 사용 사례를 이해함으로써 추가 클래스 경로 종속성이 필요한 JAR 파일을 효과적으로 실행하여 원활하고 오류가 발생하지 않도록 할 수 있습니다. 무료 실행.
위 내용은 추가 클래스 경로 옵션(-cp 대 -jar 설명)을 사용하여 JAR을 어떻게 실행합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!