1. JDK, JRE, JVM 개요
- JDK(Java Development Kit), JRE(Java Runtime Environment), JVM(Java Virtual Machine)은 Java 기술의 핵심 구성 요소입니다.
- 이 세 가지 요소는 명확한 계층 구조를 가지며, 각각 고유한 역할과 책임을 갖고 있습니다.
- Java 개발자는 이들의 관계와 차이점을 이해함으로써 더 효율적인 개발과 배포 전략을 수립할 수 있습니다.
1.1 핵심 개념 한눈에 보기
- JDK는 Java 애플리케이션을 개발하기 위한 도구 모음으로, JRE와 개발 도구를 포함합니다.
- JRE는 Java 애플리케이션을 실행하기 위한 환경으로, JVM과 라이브러리를 포함합니다.
- JVM은 Java 바이트코드를 해석하고 실행하는 가상 머신으로, 플랫폼 독립성을 제공합니다.
정보
JDK > JRE > JVM의 포함 관계를 가지고 있습니다. JDK를 설치하면 JRE와 JVM이 함께 설치됩니다.
2. JDK(Java Development Kit) 심층 분석
- JDK는 Java 애플리케이션을 개발하는 데 필요한 모든 도구와 리소스를 포함하는, 개발자를 위한 완전한 패키지입니다.
- JDK는 JRE를 포함하며, 추가로 개발에 필요한 다양한 도구를 제 공합니다.
- JDK는 Oracle JDK와 OpenJDK로 크게 나뉘며, 라이선스와 지원 정책에 차이가 있습니다.
2.1 JDK 구성 요소
- 개발 도구: 컴파일러(javac), 디버거(jdb), 아카이버(jar) 등
- JRE(Java Runtime Environment): Java 프로그램 실행에 필요한 런타임 환경
- Java 클래스 라이브러리: 표준 API 패키지 집합(java.lang, java.util 등)
- 실행 엔진: 클래스 로더, 바이트코드 검증기, 인터프리터
2.2 주요 개발 도구 상세 설명
-
javac: Java 소스 코드(.java)를 바이트코드(.class)로 컴파일하는 컴파일러
javac HelloWorld.java -
java: 컴파일된 Java 바이트코드를 실행하는 인터프리터
java HelloWorld -
javadoc: Java 소스 코드에서 API 문서를 생성하는 도구
javadoc -d docs HelloWorld.java