[JAVA] JDK, JRE, JVM 차이

juyeon park
2 min readAug 4, 2019

꾸준히 사용되는 프로그래밍 언어인 JAVA의 특징과 개발환경에 대해 평소 애매했던 부분을 정리하고자 한다.

JAVA는 어떤 운영체제에서도 동일한 형태로 실행시킬 수 있는 특징이있다. 이를 가능하게 해주는 것은 JVM이다. JVM(Java Virtual Machine)은 자바 가상 머신의 줄임말로 자바프로그램 등을 컴파일하여 만들어진 바이트 코드를 실행해주는 가상머신이다.

JAVA 언어를 작성된 프로그램을 실행하기 위해선 JRE(Java SE Runtime Environment)가 필요하다. JAVA언어를 사용하는 개발자가 아니라 JAVA언어로 만들어진 프로그램을 실행하는 사용자라면 JRE만 컴퓨터에 설치하면 된다.

JAVA 언어 개발자는 JAVA언어로 작성된 소스를 컴파일하고 관리한다. 이때 사용되는 도구를 JDK(Java SE Development Kit)라고 한다. JDK안에는 JRE도 포함된다. 컴파일한 결과를 실행하기 위해서는 JRE가 필요하기 때문이다.

따라서 JDK를 설치할 때 환경설정을 해줘야 정상적으로 작동이 된다. 운영체제 마다 환경 설정 방법은 다르지만, 설치해야할 환경 변수의 이름은 동일하다.

정리해보면,

  • JDK: Java SE Development Kit, 자바 개발 키트, JRE+컴파일러, 디버거 등의 개발도구
  • JRE: Java SE Runtime Environment, 자바 구동 환경, JVM+시스템 라이브러리
  • JVM: Java Virtual Machine, 자바 가상 머신, 운영체제 독립적으로 동작하기 위해 필요
  • IDE: Integrated Development Environment, 통합 개발 환경
  • API: Application Programming Interface, JAVA에서 기본으로 제공하는 클래스들의 모음

--

--