RECENT POSTS

최근에 작성한 글

01 / 03

전체 글

전체 보기

JAR 빌드란?

자바 클래스 파일과 리소스를 하나로 묶은 압축 파일
자바 프로그램을 담아두는 상자(ZIP 압축 파일)
metasns-api-v1.jar
 ├─ BOOT-INF/
 │   ├─ classes/        ← 컴파일된 내 코드 (.class)
 │   └─ lib/            ← 라이브러리 jar들
 ├─ META-INF/
 │   └─ MANIFEST.MF    ← 실행 정보
 └─ org/springframework/boot/loader/...
//MANIFEST.MF 안
Main-Class: org.springframework.boot.loader.JarLauncher

//지정되어 있어서 JVM이 JAR를 실행하는 방법을 알 수 있음.
  • .java 파일은 ❌
  • .class 파일만 있고 실행에 필요한 라이브러리까지 전부 포함

1️⃣ JAR로 묶는 이유

  • 전달하기 쉬움
  • 실행 환경을 통일할 수 있다
  • 배포를 단순화
  • java -jar app.jar