Java Development Kit - 자바 개발 도구
Java SE의 표준안에 따라 만들어진 구체적인 소프트웨어
Java로 프로그램을 개발하기 위해 필요
Java로 된 소스파일을 컴파일하는 컴파일러와 개발에 필요한 각종 도구 그리고 JRE가 포함되어 있음
개발자를 위한 자바 버전
javac
: 자바 컴파일러, 소스 파일을 바이트코드 파일로 변환
jar
: 압축 프로그램, 서로 관련 있는 클래스 라이브러리들과 리소스들을 하나의 JAR 파일(.jar)로 압축하거나 해제
java
: 자바 응용 프로그램 로더, javac가 만든 바이트코드를 완전한 기계어로 해석하고 실행
이외에 여러가지 툴이 포함되어 있음 (javadoc, jps, jmap ...)
Java Runtime Environment - 자바 실행 환경
자바가 실제로 동작하는 데 필요한 JVM, 라이브러리, 각종 파일들이 포함되어 있음
자바로 만들어진 프로그램을 구동하기 위해 필요
일반인을 위한 자바 버전
Java Virtual Machine - 자바 가상 머신
자바코드를 해석해서 프로그램을 실행해주는 가상 머신
자바가 실제로 구동하는 환경
자바로 만들어진 소프트웨어는 JVM이라는 가상환경에서 구동되고, 하드웨어나 운영체제에 따라 달라질 수 있는 호환성 문제를 운영체제 버전에 따라 만들어진 JVM이 알아서 해결
하나의 자바 프로그램을 만들면 어떤 환경에서도 실행할 수 있게 해주는 역할
Java 언어로 개발
컴파일, 디버깅 등에 JDK 필요
개발을 하면서 자바에서 기본 제공하는 JRE 라이브러리 사용
JVM에서 바이트코드를 읽어 운영체제에 맞게 실행
JDK: 자바 개발 도구 / JRE: 자바 실행 환경
[참조]
https://whitekeyboard.tistory.com/368
https://velog.io/@jkijki12/Java%EC%97%90-%EA%B4%80%ED%95%98%EC%97%AC