Development/JAVA
[Java] JDK, JRE, JVM는 차이점은 무엇일까?
luminous13
2022. 4. 18. 19:27
개요
자바를 공부하다 보면 위의 3가지 용어를 자주 접하게 됩니다. 그만큼 중요한 개념인데요. 애매한 상태로 남겨두기보다는 한 번에 확실하게 정리하는 게 좋을 것 같아서 작성하게 되었습니다. 각 개념을 설명하기 앞서 그림으로 큰 구조를 보겠습니다.
JDK(Java Development Kit, 자바개발키트)
- JDK란 자바 프로그램을 개발하기 위해 필요한 툴들을 모아 놓은 소프트웨어 패키지다.
- JRE + 개발도구(컴파일러, 디버거 등)
JRE(Java Runtime Environment, 자바실행환경)
- JRE란 자바 프로그램을 실행하기 위해 필요한 환경이다.
- JVM + 클래스 라이브러리
- 개발자뿐만이 아니라 자바 프로그램을 실행하는 사용자라면 JRE이 필요하다.
JVM(Java Virtual Machine, 자바가상머신)
- JVM란 자바 바이트코드(.class)을 이용해서 자바 프로그램을 실행시켜주는 프로그램이다.
-개발자가 작성한 자바 소스파일(.java)를 컴파일러(javac)가 컴파일하면 바이트코드가 되고, JVM이 이 바이트코드를 실행하여 프로그램을 실행합니다.
-JVM이 있어서 자바 프로그램은 OS에 독립적이다.
-반면에 JVM은 OS에 종속적이다.
Reference
https://pjuyeon25.medium.com/java-jdk-jre-jvm-%EC%B0%A8%EC%9D%B4-b5a60fe4653
[JAVA] JDK, JRE, JVM 차이
꾸준히 사용되는 프로그래밍 언어인 JAVA의 특징과 개발환경에 대해 평소 애매했던 부분을 정리하고자 한다.
pjuyeon25.medium.com