JDK는 프로그램을 개발하고 컴파일할 수 있는 도구를 제공하며,
JRE는 이미 만들어진 자바 프로그램을 실행하는 데 필요한 환경을 제공.
JDK (Java Development Kit)
- 자바를 이용해 프로그램을 개발하는 데 필요한 도구를 모아 둔 집합.
- 자바 코드를 작성하는 도구, 소스를 컴파일하는 컴파일러 등으로 이루어져 있음.
*컴파일: 프로그래머가 작성한 소스 코드를 컴퓨터가 이해할 수 있는 말(기계어)로 바꾸는 행위
JRE (Java Runtime Environment)
- JDK보다 작은 개념으로, 자바가 실행될 수 있는 최소한의 파일들이 설치되어 있는 환경.
- 완성된 프로그램을 실행하는 데 필요한 환경.
- JDK를 가져와 프로그램을 완성하고 JRE 위에서 실행하면 프로그램이 돌아가는 것.
*프로그램을 만들 때는 프로그램이 잘 만들어지고 있는지 수시로 실행해 보면서 작성해 나갈 것이다. 그래서 JDK의 내부에는 JRE가 포함돼 있다. 또한 자바 프로그램, 즉 자바 실행 파일(.class)은 자바 가상 머신 위에서만 실행할 수 있으므로 자바 실행 환경을 제공하기 위해서는 반드시 자바 가상 머신을 설치해야 한다. 즉, JRE 내부에는 자바 가상 머신이 포함돼 있어야 하는 것이다.
*JRE에는 javac.exe와 같은 자바 파일을 컴파일하기 위한 도구는 포함되지 않는다.
출처:
- 김동형, 『 Do it! 자바 완전 정복 』, 이지스퍼블리싱(2021), 20-21.
- 박응용, 『 Do it! 점프 투 자바 』, 이지스퍼블리싱(2023), 23-24.
- ChatGPT