2022-12-10
1. 정의
jar
자바 파일들을 모아서 만든 하나의 zip 파일이라고 볼 수 있으며, 쉽게 말해 자바로 만든 프로젝트를 패키징 한 압축파일이라고 생각할 수도 있습니다. 또한 이로 인해서 자바 형태의 프로젝트를 손쉽게 배포할 수 있는 장점이 있습니다. jar 파일은 META-INF/MANIFEST.MF 경로에 위치한 매니페스트 파일을 선택적으로 포함할 수 있으며, 매니페스트 파일 안에는, 어떻게 jar 파일을 이용할지를 기술한 엔트리 정보가 적혀있습니다. 이를테면 클래스 패스(자바) 엔트리를 사용하면 해당 jar 파일과 함께 로드할 다른 JAR 파일들을 지정할 수 있고, java.util.zip 패키지는 jar 파일을 읽고 쓰는 클래스들을 포함하고 있습니다.
war
WAR 파일(Web Application Resource 또는 Web application ARchive)은 JAR 파일, JavaServer Pages, Java Servlet, Java 클래스, XML 파일, 태그 라이브러리, 정적 웹 페이지(HTML) 모음을 배포하는 데 사용되는 파일입니다. jar 형식의 파일과 같은 형식의 디지털 서명을 사용할 수 있습니다. 손쉽게 웹어플리케이션을 테스트할 수 있으며, 모든 자바 EE 컨테이너가 war 형식의 파일을 지원합니다.
2. 차이점
jar
jar 파일에는 속성 파일과 같은 라이브러리, 리소스 및 액세서리 파일이 포함되어 있습니다.
war
war 파일에는 모든 servlet/jsp 컨테이너에 배포할 수 있는 웹 애플리케이션이 포함되어 있습니다. .war 파일에는 웹 애플리케이션 개발에 필요한 jsp, html, javascript 및 기타 파일이 포함되어 있습니다.
- 참고 자료
https://docs.oracle.com/javase/8/docs/technotes/guides/jar/jarGuide.html
https://ko.wikipedia.org/wiki/JAR_(% ED% 8C% 8C% EC% 9D% BC_%ED% 8F% AC% EB% A7% B7)
https://en.wikipedia.org/wiki/WAR_(file_format)
https://stackoverflow.com/questions/5871053/difference-between-jar-and-war-in-java
메인 이미지 출처 : Photo by Birger Strahl on Unsplash