오늘 jar 명령과 war 및 jar 패키지의 압축을 푸는 방법을 배웠습니다. 2. 운영 환경 호스트 및 그 구성
이러한 일반적인 jar 패키지는 jar 명령에 의해 생성되었습니다. Java 언어는 JDK 를 설치할 때 JDK 를 사용하여 bin 디렉토리에 설치합니다. Windows 시스템의 경우 jar.exe 프로그램이고 Linux 시스템의 경우 jar 파일입니다.
Jar 명령은 jar 패키지를 생성, 조회, 업데이트 또는 압축 해제하는 기능을 제공합니다. Jar 패키지는 다른 압축 패키지와 비슷하지만 메타-INF/매니페스트를 포함합니다. Jar 패키지가 생성될 때 자동으로 만들어지는 MF 파일입니다.
Jar 명령 매개 변수에 대한 자세한 설명:
C: \ > Jar cf lm.jar
C' 기호는 목록이나 입력 파일을 지정해야 합니다!
사용법: jar {ctxui} [vfm0me] [jar-file] [매니페스트-파일] [entry-point] [-cdir] 파일 ...
옵션은 다음과 같습니다.
-c 새 아카이브 만들기
-t 아카이브 디렉토리를 나열합니다
-x 아카이브된 지정 (또는 모든) 파일의 압축을 풉니다.
-u 기존 아카이브 업데이트
-v 표준 출력에서 자세한 출력을 생성합니다.
-f 아카이브 파일의 이름을 지정합니다.
-m 지정된 인벤토리 파일의 인벤토리 정보를 포함합니다.
-e 는 실행 가능한 jar 파일에 바인딩된 독립 실행형 애플리케이션입니다.
응용 프로그램 진입점을 지정합니다
-0 개 상점만; ZIP 압축은 사용하지 마십시오
-M 항목에 대한 인벤토리 파일을 만들지 마십시오.
-i 지정된 jar 파일에 대한 인덱스 정보를 생성합니다.
-C 지정된 디렉토리로 변경하고 그 안에 있는 파일을 포함합니다.
카탈로그 파일이 있으면 재귀적으로 처리합니다.
인벤토리 파일 이름, 아카이브 파일 이름 및 항목 이름 지정 순서를 지정합니다.
"m", "f" 및 "e" 기호와 순서가 같습니다.
예 1: 두 개의 클래스 파일을 classes.jar 이라는 아카이브에 보관합니다.
Jar CVF class.jarfoo.classbar.class
예 2: 기존 매니페스트 파일 "mymanifest" 사용 및
Foo/ 디렉토리에 있는 모든 파일을' classes.jar' 로 아카이빙합니다.
Jar cvfm classes.jar mymanifest-c foo/.
인스턴스 1.
C: \ > 항아리 cf lm. 항아리 lm. Lm.java 레벨
결과: 실행 가능한 jar 파일 유형의 lm.jar 패키지가 드라이브 c 아래에 작성됩니다.
예 2. V 매개 변수를 추가하면 자세한 패키징 프로세스가 표시됩니다.
C: \ jar > Jar CVF lm.jar Lm.class
목록 (운송장)
추가: lm.class (read = 410) (write = 283) (30% 압축)
여기서 c 인수는 jar 패키지 작성을 나타내고 f 인수는 지정된 jar 패키지 파일 이름입니다. Jar 명령을 사용할 때, 너는 필요한 인수를 지정하고 그에게 네가 무엇을 하고 싶은지 말해야 한다. 이러한 매개변수는 다음과 같습니다
-c 새 아카이브 만들기
-t 아카이브 디렉토리를 나열합니다
-x 아카이브된 지정 (또는 모든) 파일의 압축을 풉니다.
-u 기존 아카이브 업데이트
예 3. 방금 생성한 jar 패키지를 실행하려면 다음과 같이 하십시오.
C: \ > Java -jar lm.jar
에서 마스터 클래스 인벤토리 속성을 로드할 수 없습니다
Lm.jar
영어 오류 메시지에 따르면 lm.jar 패키지의 매니페스트 속성을 읽지 못한 것 같습니다.
예 4. META-INF/MANIFEST 가 없는 jar 패키지를 만듭니다. MF 파일.
C: \ jar > Jar cvfM lm 1.jar Lm.class
추가: lm.class (read = 410) (write = 283) (30% 압축)
예 5. Jar 패키지의 파일을 표시합니다
C: \ jar > Jar TF lm.jar
메타 정보/
메타 INF/ 목록. 중간 주파수
Lm.class
예 6. META-INF 디렉토리와 META-INF/MANIFEST 가 없습니다. Jar 패키지를 만들 때 m 매개 변수를 사용했기 때문입니다.
C: \ jar > 항아리 TF lm 1. 항아리
Lm.class
예 7. Jar 패키지의 파일 및 파일 세부 정보를 표시합니다
C: \ jar > Jar tvf lm.jar
0 월 26 일 월요일 23 시 9 분 34 CST 2011meta-INF/
75 mon sep 26 23: 09: 34 CST 2011메타 정보/목록. 중간 주파수
4 10 Mon 9 월 26 일 22: 09: 00 CST 2011lm.class
이러한 세부 정보에는 읽은 바이트 수, jar 패키지에서 읽은 시간, 디렉토리 또는 파일 이름이 포함됩니다.
예 8. Jar 패키지의 압축을 현재 디렉토리에 풉니다.
C: \ jar > 항아리 xf lm.jar
아무 정보도 표시되지 않지만 압축을 풀었습니다.