본문 바로가기
  • 그라데이션
개발관련/Java

[Java] 자바 JRE, JDK란?

by 콩리토 2023. 4. 10.
반응형
Java 개발을 위해 설치를 진행하다보면 Java 관련 폴더에 JDK와 JRE폴더가 각각 생기는 경우가 있다.
여기서 JDK와 JRE의 역할은 무엇이며, 어떤 차이가 있는지 알아보자.

 


 

JRE(Java Runtime Environment)

 JRE는  '자바 실행 환경'이라는 뜻으로 Java 클래스 라이브러리들과 각종 API, JVM(자바 가상 머신), 자바 명령(Java Command) 및 기타 인프라를 포함한 컴파일된 Java 프로그램을 실행하는데 필요한 패키지이다. 

 

 


JDK(Java Development Kit)

 JDK는 자바 개발 도구 상자라는 뜻으로 개발자들이 Java로 개발하는 데 사용된다. JDK내에는 개발 시 필요한 라이브러리들과 javac, javadoc 등의 개발 도구들이 포함되어 있으며, 개발을 하려면 Java 실행 환경도 포함되어 하기 때문에 JRE (Java Runtime Environment)도 함께 포함되어 있습니다.

 

 


한 줄 요약
▶ JDK는 JRE를 포함한 개념이며, JDK는 Java 개발을 위한, JRE는 Java를 실행하기 위한 패키지이다.

 

※ Java 관련 사용자 디렉토리 구성요소

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

 

bin 에 포함된 주요한 개발 소프트웨어 설명

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

 


 

[참고 자료 출처]

https://www.geeksforgeeks.org/difference-between-jdk-and-jre-in-java/

https://coding-factory.tistory.com/826

728x90

'개발관련 > Java' 카테고리의 다른 글

[Java] Java 환경 변수를 설정과 이유  (0) 2023.04.01

댓글