머리말
Java 개발 환경에서 개발을 위해 JDK 설치 과정에 의문점이 발생한다. JRE 패키지는 무엇이며, 적지 않게 들어본 JVM은 무엇인지 궁금하다. 본 포스팅에서는 JDK, JRE, JVM 각 용어와 개념에 대해서 간단하게 소개하도록 한다.
JVM (Java Virtual Machine)
자바 가상 머신이라고 불리며 자바 언어의 컴파일 결과물인 클래스 파일을 실행하는 환경이다. JVM은 운영체제에 의존하지 않고 수행할 수 있다. 운영체제에 의존하지 않고 수행할 수 있는 이유는 JRE 도움이 있기 때문이다. 클래스 파일을 실행할 수 있는 환경은 JRE가 담당하며, JVM은 단지 클래스 파일을 읽고 검증하며 실행하는 역할에 충실할 뿐이다.
JRE (Java Runtime Environment)
JVM이 클래스 파일을 실행하기 위해 필요한 라이브러리 파일 등을 지원하는 도구다. JRE는 JVM을 포함하며 서로 연관된 관계를 가지고 있는데, 클래스 파일을 실행하기 위한 환경을 구성하는데 집중한다.
JDK (Java Development Kit)
Java 개발 환경을 구성하기 위해 필요한 도구다. JRE가 실행환경을 구성하기 위한 도구라면, JDK는 클래스 파일을 생성하기 위한 도구다. JDK의 빌드 환경을 통해 생성된 클래스 파일은 JVM에 의해 실행된다. 개발자가 아닌 사용자 환경에서는 빌드 과정이 필요하지 않기 때문에 굳이 필요하지 않으며, 개발자 환경이라면 필수로 설치돼야 하는 도구다. JDK는 JRE를 포함하는 패키지로 생각하면 어렵지 않게 이해할 수 있다.
꼬리말
이클립스 개발 도구로 애플리케이션을 개발한다면 JDK 패키지가 필요하다. 하지만 컴파일이 필요하지 않은 tomcat 웹서버를 구동하기 위해서는 JRE만 필요할 수 있다. 물론 tomcat 환경에서 java 빌드 과정이 필요하다면 JDK도 필요하지만, tomcat 서버 기동까지만 수행한다면 필요 없다. tomcat 입장에서는 클래스 파일만 실행시킬 수 있으면 그만이다. Java 환경에서 사용되는 JDK, JRE, JVM 용어의 일반적인 개념에 대해서 소개한 본 포스팅은 이로써 마무리를 짓도록 한다.
소중한 댓글 (0)