Devops/Devops

JAR와 WAR이해하기

ellapk 2024. 10. 14. 14:11

1. JAR 파일이란?

  • Java Application Archive 파일로서, 자바 애플리케이션을 패키징 하기 위한 포맷이다.
  • 클래스 파일, 메타데이터, 리소스 파일 등 모든 의존성을 내장하고 있어서 독립 실행이 가능하다 -> 어디서나 동일한 환경으로 애플리케이션을 실행할 수 있다.

 

 

2. WAR 파일이란?

  • Web Application Archive 파일로서, 웹 어플리케이션을 배포하기 위한 자바 아카이브 포맷이다.
  • JSP, 서블릿, html, css 등 웹 어플리케이션을 구성하는 모든 요소들을 하나의 아카이브로 묶어준다.

 

 

 

3. WAR vs JAR 어떤 차이가 있을까?

 

배포의 유연성

  • WAR : 서버에 종속적이다. 대규모 및 복잡한 app에 유리하다.
  • JAR : 어디서나 실행 가능한 구조라 빠른 테스트, 배포에 좋다. 특히 MSA에 적합하다

 

프로젝트의 복잡성

  • WAR :서버의 고급 기능(보안, 세션관리) 등을 활용할 수 있다.
  • JAR : 간단하고 독립적인 서비스에 적합하다