SPRING

Packaging Jar VS War

개발하는고양이 2023. 12. 7. 13:50
반응형

스프링부트에서 프로젝트를 세팅할때, Packaging를 Jar 또는 War로 선택할 수 있다. 여기서 Packaging란 무엇일까?

 

Packaging

배포 & 배포를 위한 자바 응용 프로그램이다. 애플리케이션을 실행하는데 필요한 파일과 리소스를 구조화시켜

아카이브를 만드는 것을 패키징이라고 한다. 그래서 패키징 유형 이름도

Jar ( Java Archive)

War (Web Application Archive)

인 것이다!

 

Jar

Java 어플리케이션이 동작하도록 자바 프로젝트를 압축한 파일이다.

Java 리소스와 속성 파일 + 라이브러리 파일

JRE만으로도 실행 가능하다. 즉 별도의 웹서버 없어도 자바가 설치된 모든 시스템에서 실행가능하다는 뜻.

War

servlet / jsp 컨테이너에 배치 할 수 있는 웹 어플리케이션 압축 파일 포맷이다.

servlet관련 파일들로 패키징되어있다. (JSP,Servlet,Jar,class,xml,html,javascript...) 

Jar는 폴더를 자유롭게 놓을 수 있지만, War는 정해진 구조와 디렉토리를 사용해야한다.

War를 실행하기 위해서는 톰캣이나 WAS가 필요하다.

구조

 

 

반응형