JAR vs. WAR

HwangJerry·2023년 4월 25일
0
post-thumbnail

JAR vs. WAR

JAR(Java ARchive)와 WAR(Web application ARchive)는 두 가지 다른 형태의 자바 아카이브 파일입니다. 각각의 목적과 구조에는 다음과 같은 차이점이 있습니다.

JAR (Java ARchive)

  • 자바 애플리케이션을 패키징하기 위한 형식으로, 단독 실행 가능한 자바 어플리케이션을 만들 때 사용합니다.
  • 애플리케이션을 실행하는 데 필요한 모든 클래스 파일, 리소스 파일, 라이브러리 파일 등을 하나의 파일로 묶어서 배포할 수 있습니다.
  • JVM에서 직접 실행되어 동작하며, WAS와는 상관없이 실행될 수도 있습니다.
  • 하지만 단순한 자바 애플리케이션이 아닌 "웹" 애플리케이션으로 동작시키기 위해서는 SpringBoot 내장 웹 서버를 사용하거나 외부 WAS를 적용해야 합니다.

WAR (Web Application ARchive)

  • 자바 웹 애플리케이션을 패키징하는 데 사용되는 표준 형식입니다.
  • 웹 애플리케이션에 필요한 HTML, CSS, JS, JSP 등의 웹 리소스와 Java 클래스 파일, 라이브러리 파일 등을 하나의 파일로 묶어서 배포할 수 있습니다.
  • war 파일은 Tomcat, Wildfly 등의 Java 기반 WAS에서 실행되며, 웹 서버와 통합되어 웹 애플리케이션을 호스팅하고 사용자에게 서비스를 제공합니다.

+ JAR 파일 빌드 +

jar 파일을 빌드하고 실행하기 위해서는 다음 과정을 거치게 됩니다.

콘솔로 이동

  1. ./gradlew build 프로젝트 파일 빌드
  2. cd build/libs 빌드 파일이 저장된 경로로 이동
  3. java -jar {project_name}-0.0.1-SNAPSHOT.jar 프로젝트 실행 확인
profile
알고리즘 풀이 아카이브

0개의 댓글