어느 가을날의 전환점

JAR|jar파일 사용법 본문

Software

JAR|jar파일 사용법

어느가을빛 2010. 1. 14. 15:07
1. jar파일이란
 : jar파일은 archive파일이다. 즉 여러개의 파일을 하나의 파일로 묶는 jar명령을 사용하여 생성된다. 

2. zip 파일과 다른 점
 : zip과 다른점은 압축되어 있을수도 있고, 그냥...하나로 묶어놓은 파일일수 도 있다. 그래서 jar 파일을 archive파일이라 볼수 있다. 이렇게 archive파일로 묶는 이유는 자바로 개발한 여러클래스 파일들 또는 패키지 파일이 있을때, 이를 하나로 묶어두면, 그 클래스들을 참조하기도 편하고, 다운 받기도 쉽다.

3. jar명령 사용하기 
(1) 명령구문 : jar {ctxu}[vfm0M] [jar-file] [manifest-file] [-C dir] files ...
(2) {ctxu} 중의 하나는 맨 앞에 나와야할 필수 옵션이다.
    : c  (새로운 archive파일을 생성한다)
    : t  list table of contents for archive 
    : x  (다음에 지정한 파일들을 archive파일로 부터 압축을 푼다)
    : u  (기존 archive파일에 들어있는 파일을 수정한다.)
(3) [vfm0M]은 {ctxu} 중의 하나다음에 오는 옵션이다.
    : v  (명령화면창으로 진행사항에 관한 메시지를 출력한다.) : 웬만하면 써주면...좋음..
    : f  (archive될 파일이름을 지정한다.) : 그래도 생성될 파일의 이름은 써줘야겠죠...?
    : m  (정보를 manifest파일로 부터 포함한다.)
    : 0  (저장만 하고, zip으로 압축하진 않는다.) 
      -  클래스파일을 압축하면 곤란하죠...class파일의 경우는 꼭..써줘야죠..
    : M  (추가되는 엔트리에 대한 manifest 파일을 생성하지 않는다.)
(4) -C  (지정된 디렉토리로 바꾸고, 다음 파일을 포함한다.)
    : 어떤 파일이 디렉토리이면 순환되면서 처리된다. 
(5) manifest file이름과 archive파일 이름은 순서대로 지정되어야 한다.
(6) manifest file : 뭐...대단한 파일인줄 알았는데, 열어보면 내용이 다음과 같습니다.
    : m옵션을 주어 지정하는데 뭐....중요한건 아닌거 같으니까...이런게 있다는것만 아셔도 될듯..
   <내용>
    Manifest-Version: 1.0
    Created-By: 1.2.2 (Sun Microsystems Inc.)

4. 사용예
예) jar cvf new.jar 1.class 2.class
: c옵션이 사용되었으므로 일단은 1.class, 2.class를 묶으려고 시도할 것이다.
: v옵션이 사용되었으므로 진행상황 메시지를 보여준다..
: f옵션은 c옵션사용시 생성될 파일명을 지정(반드시 해주어야 지정된 이름으로 파일이 생성된다.)

예) jar cvf new.jar -C test/ .
: -C옵션을 주면 현 디렉토리 아래의 test디렉토리에 있는 모든 파일을 new.jar로 묶어준다.

예) jar cvf new.jar -C /test .
: 위의 것이랑 비슷하지만... test디렉토리 뿐 아니라 현디렉토리에 있는 파일도 new.jar로 묶어준다.

예) jar xf test.zip
: x옵션은 아카이브를 푼다는 의미...

예) jar ufv0 new.jar test
: u옵션은 test디렉토리 밑의 파일들을 new.jar에 추가한다는 의미...(test디렉토리에 파일이 있어야겠죠..?)
: 0옵션은 압축하지 말고 추가하라는 의미(클래스 파일의 경우는 이 옵션을 써줘야함)

예) jar cvf new.jar * 
: 하위 폴더 전체를 new.jar로 묶어준다.

출처는 이곳입니다...
Comments