자바를 사용하다보면 배포를 jar로 하거나 war 파일로 하는데 무슨 차이점이 있나 한번 알아보았습니다. 2가지 모두 어플리케이션 소스들을 배포할 시에 path 등의 설정에서의 애로사항을 제거하기 위해 탄생한 압축방식입니다. 이 압축파일들은 압축의 해제없이 JDK에서 각 파일들을 접근하여 사용할 수 있도록 설계되어있습니다. 이렇게 파일을 압축하는 이유는 파일의 용량이 줄어들고, 관리하기 편하기 때문입니다.
1. JAR(Java Archive, 자바 아카이브)
JAR는 여러개의 자바 클래스 파일과, 클래스들이 이용하는 관련 리소스(텍스트, 그림 등) 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 소프트웨어 패키지 파일 포맷입니다. 컴퓨터 사용자들은 JDK에 포함된 jar 명령어를 이용하여 JAR 파일을 만들거나 압축을 풀 수 있습니다.
2. WAR(Web Archive, 웹 아카이브)
WAR는 JAR과 달리 웹 어플리케이션(Web Application)을 지원하기 위한 압축 방식입니다. 웹 어플리케이션을 지원하기 위해서 war 압축방식은 jsp, servlet, gif, html, jar 등을 압축하고 지원합니다. (servlet context 접근을 위해 관련된 모든 파일들을 패키지화)
3. EAR(Enterprise Archive, 엔터프라이즈 아카이브)
하나의 웹 어플리케이션(Web Application) 단위를 넘어 실제 서버에서 배포하기 위한 단위입니다. 이를 위해서 jar와 war를 묶어서 가각의 기능을 지원합니다.
REFERENCE
'Java' 카테고리의 다른 글
[Java] HashMap (0) | 2020.03.26 |
---|---|
[Java] public static void main(String args[]) 분석 (0) | 2020.03.24 |
[Java] 문자열 split 후 List에 넣기 (0) | 2019.11.08 |
[Java] compareTo() 문자열 비교 함수 (0) | 2019.11.05 |
[Java] 22. JAR (Java ARchive Files) 파일 (0) | 2019.06.04 |