JAR,WAR,EAR 차이점

김신영·2023년 7월 19일
0

JAVA

목록 보기
1/2
post-thumbnail

Packaging이란?

패키징은 소프트웨어를 배포하기 전에 소스 코드를 하나의 파일로 압축하는 과정이다. 패키징을 통해 소프트웨어를 쉽게 배포하고 설치할 수 있다. 또한 패키징을 통해 소프트웨어를 분류하고 관리할 수 있다.
JAR, WAR 둘다 Java의 jar 툴을 이용해 생성된 압축(아카이브) 파일로, 애플리케이션을 쉽게 배포하고 동작시킬 수 있도록 관련 파일(리소스, 속성 파일 등)을 묶어놓은 것이다.
(플랫폼에 귀속되는 점만 제외하면 WIN ZIP파일과 동일한 구조이다.)

JAR (Java Archive)

JAR 파일은 다음과 같은 파일들을 포함한다.

  • 클래스 파일
  • 리소스 파일
  • 메타데이터 파일

JRE( Java Runtime Environment )만 존재하면 프로젝트 구동이 가능하다.

WAR (Web Application Archive)

WAR 파일은 JAR 파일과 함께 다음과 같은 파일들을 포함한다.

  • JAR +
  • HTML 파일
  • CSS 파일
  • JavaScript 파일

WAR => JAR파일의 일종으로 웹 애플리케이션 전체를 패키징 하기 위한 JAR 파일이다.

원하는 구성을 할 수 있는 JAR 포맷과 달리 WAR은 WEB-INF 및 META-INF 디렉토리로 사전 정의 된 구조를 사용하며 WAR파일을 실행하려면 Tomcat, Weblogic, Websphere 등의 웹 서버 (WEB)또는 웹 컨테이너(WAS)가 필요하다.

EAR (enterprise archive)

엔터프라이즈 애플리케이션(기업에서 사용하는 대규모 소프트웨어 애플리케이션)을 패키징하는 데 사용되는 파일이다. EAR 파일은 하나 이상의 JAR 파일, WAR 파일, 기타 리소스를 포함한다.

EAR 파일을 실행하려면 완전한 Java EE (Java Platform, Enterprise Edition) 또는 WebSphere 또는 JBoss와 같은 Jakarta Enterprise Edition (EE) 호환 애플리케이션 서버가 필요하다.

profile
공부합시다.

2개의 댓글

comment-user-thumbnail
2023년 7월 19일

이 글은 저에게 많은 도움이 되었습니다.

1개의 답글