자바 클래스 파일을 jar 로 묶고 사용하기

Java|2021. 2. 26. 23:22

자바로 API 를 만들어서 외부에 라이브러리로 제공할 때 클래스 파일로 제공한다면 클래스 파일 갯수가 많을 경우 라이브러리 사용자 입장에서는 사용에 부담을 느낄 수 있다.

이런 경우 라이브러리에 포함되는 모든 클래스 파일을 하나의 아카이브 (jar) 로 묶어서 제공한다면 효율적으로 사용할 수 있다.

jar 파일의 경우 압축해제 없이 jar 파일 내에 있는 클래스에 접근이 가능하기 때문에 유용하다.

 

우선 테스트를 위해 두 개의 클래스 파일을 생성해보자.

 

테스트를 위한 클래스 파일

 

클래스 내용은 중요하지 않다.

아무 클래스 파일이라도 상관없다.

이제 이 두 클래스 파일을 하나의 jar 파일로 묶을 차례다.

 

커맨드 입력 라인에서 다음과 같이 입력한다.

 

C:\> jar cvf library.jar ./library/*.class
added manifest
adding: library/A.class(in = 176) (out= 150)(deflated 14%)
adding: library/B.class(in = 176) (out= 150)(deflated 14%)

 

나는 C 드라이브에 library 디렉터리를 만들고 이 디렉터리에 클래스 파일들을 위치시켰기 때문에 ./library/*.class 라고 입력했다.

library.jar 는 생성할 jar 파일의 이름인데, 확장자만 .jar 로 적어준다면 어떤 이름이든 상관없다.

added manifest 메세지가 나온다면 정상적으로 jar 파일이 생성된것이다.

 

생성된 jar 파일

 

이제 이 jar 파일을 배포하기만 하면 된다.

 

만약, 라이브러리 사용자 입장에서 이 jar 파일을 사용하고 싶다면 클래스 패스에 jar파일이 존재하는 디렉터리를 추가하고 사용하면 된다.

아주 간단하다.

'Java' 카테고리의 다른 글

JShell 을 이용해 자바 테스트하기  (0) 2021.02.26

댓글()