[Java] 자바 JDK, JRE의 차이점(JDK란? JRE란?)

자바를 처음 설치하면 Java 폴더에 아래와 같이 JDK와 JRE 가 각각 설치되는 것을 보실 수 있습니다. 그렇다면 이 JDK와 JRE의 역할은 무엇일까요? 이번 포스팅에서는 JDK, JRE 용어에 대해 정리해보도록 하겠습니다.

 

JDK, JRE

 

 JRE, JDK 용어정리 

JRE(Java Runtime Environment)란?

JRE는 자바 실행 환경(Java Runtime Environment)의 약자로 자바로 만들어진 프로그램을 실행시키는데 필요한 라이브러리들과 각종 API, 그리고 자바 가상 머신 (JVM)이 포함되어 있습니다. JRE는 자바로 "개발(쓰기)은 안되고 실행(읽기)만 된다"라고 생각해주시면 될 것 같습니다.

 

JDK(Java Development Kit)란?

JDK는 자바 개발키트(Java Development Kit)의 약자로 이름 그대로 개발자들이 자바로 개발하는 데 사용됩니다. JDK안에는 개발 시 필요한 라이브러리들과 javac, javadoc 등의 개발 도구들을 포함되어 있고 개발을 하려면 당연히 실행도 시켜줘야 하기 때문에 JRE (Java Runtime Environment)도 함께 포함되어 있습니다.

JRE와 JDK


※ 정리하자면 Java로 프로그램을 직접 개발하려면 JDK가 필요하고 Java로 만들어진 프로그램을 실행시키려면 JRE가 필요합니다.

 

 JDK와 JRE 내부 구성 

JDK, JRE 내부구성

 

사용자 디렉터리 구성요소

  • bin : 자바 개발, 실행에 필요한 도구와 유틸리티 명령
  • conf : 여러 종류의 패치 파일
  • include : 네이티브 코드 프로그래밍에 필요하는 C언어 헤더 파일
  • jmods : 컴파일된 모듈 파일들
  • legal : 각 모듈에 대한 저작권과 라이선스 파일
  • lib : 실행 시간에 필요한 라이브러리 클래스들

 

bin 디렉터리에 들어 있는 주요한 개발 소프트웨어

  • javac : 자바 컴파일러로 자바 소스를 바이트 코드로 변환
  • java : 자바 프로그램 실행기 → 자바 가상 기계를 작동시켜 자바 프로그램 실행
  • javadoc : 자바 소스로부터 HTML 형식의 API 도큐먼트 생성
  • jar : 자바 클래스 파일을 압축한 자바 아카이브 파일(.jar) 생성, 관리
  • jmod : 자바의 모듈 파일(.jmd)을 만들거나 모듈 파일의 내용 출력
  • jlink : 응용프로그램에 맞춘 맞춤형 JRE 생성
  • jdb : 자바 응용프로그램의 실행 중 오류를 찾는 데 사용하는 디버거
  • javap : 클래스 파일의 바이트 코드를 소스와 함께 보여주는 디어셈블러

댓글

Designed by JB FACTORY