본문 바로가기
Java

JDK ? JRE ? JVM ?

by 성장호소 2024. 9. 7.

관계도

JDK ⊃ JRE ⊃ JVM

 

 

JDK 란?

- 기술적 정의: 컴파일러와 클래스 라이브러리를 포함하는 자바 플랫폼 사양서의 구현

- 일반적 정의: 개발자가 자바 기반 애플리케이션 개발을 위해 다운로드하는 소프트웨어 패키지

  • 자바 개발 키트(Java Development Kit)는 자바 애플리케이션을 구축하기 위한 핵심 플랫폼 구성요소이다.
  • 개발자들이 JVM과 JRE에 의해 실행되고 구동될 수 있는 자바 프로그램을 생성할 수 있게 해준다.
  • 자바 기반 소프트웨어를 개발하기 위한 도구들로 이뤄진 패키지

이런 저런 설명들이 많은데 지금까지 개발하면서 스쳐가듯이 봤던 경험으로는 자바 컴파일러를 포함하고 자바 애플리케이션 개발을 위해 다운받는 패키지 정도이다.

 

ex ) openjdk, temurin ...

 

- 자바 컴파일러란 ?

  우리가 작성한 .java 파일을 컴퓨터가 이해할 수 있게 .class 파일로 해석해주는 소프트웨어이다.

 

JRE 란?

  • 자바 코드를 실행하기 위한 도구들로 구성된 패키지

JDK를 다운받으면 기본적으로 JRE가 포함되어 있다. 

만약 자바로 개발을 안 하지만 자바 파일을 실행해야 한다면 JDK말고 JRE만 설치해도 된다.

 

JVM ?

JAVA의 특성 중 하나로 WORA(Write Once, Run Anywhere)가 있는데 운영체제에 따라 동작(플랫폼 독립성)할 수 있다.이 특성은 자바 가상 머신, JVM 덕분이다.

운영체제에 따라 동작(플랫폼 독립성)