[JDK | JRE] JDK 와 JRE 의 차이는 무엇일까?

2025. 4. 16. 16:22·JAVA

오늘은 JDK 와 JRE 의 차이에 대해 알아보겠습니다.

설명에 앞서 간단히 JRE 는 자바 프로그램을 실행을 시키기 위한 도구고,

JDK 는 자바 프로그램을 개발하고 실행시키고 싶을 때 필요한 도구 입니다.

 

먼저 JRE에 대해 알아보겠습니다.

 

JRE(Java Runtume Environment)는 자바를 실행시키기 위해 필요한 환경을 제공해줍니다.

개발을 하지 않고, 이미 만들어진 자바 프로그램을 실행만 하고 싶을 때 필요한 도구입니다.

JRE 는 크게 2가지로 나뉘어져 있습니다.

 

1. JVM(Java Virtual Machine)

- 자바 프로그램이 돌아가는 가상머신

- .class 파일(바이트코드)을 실행하는 역할

 

2. Java Class Library

- 자바 프로그램을 실행하는데 필요한 여러 라이브러리들이 들어있음

- 문자열 처리, 입/출력 등 기본 기능들

 

이제 JDK 에 대해 알아보겠습니다.

 

JDK(Java Development Kit) 은 자바를 개발하기 위한 도구들의 모음입니다.

자바 프로그램을 작성하고, 컴파일하며, 실행하기 위한 개발자용 패키지 입니다.

JDK 는 사실 JRE + 개발 도구로 이루어져 있습니다.

 

1. JRE

- 자바 프로그램을 실행시키기 위한 도구 (JVM, 라이브러리)

2. 개발 도구

- javac (자바 컴파일러) -> 자바 코드를 컴파일해서 .class 파일로 만듬

- java -> 프로그램 실행 도구

- javadoc  -> 문서 생성 도구

- jar -> 자바 압축 파일 생성 도구

 

순서

1. 자바 코드 작성 (jdk 필요)

2. 작성한 코드 컴파일 (jdk 필요)

3. 컴파일 되면 .class 파일로 된 바이트코드로 변환 됨

4. 컴파일된 .class 파일(바이트코드)을 jre 에 있는 JVM 으로 실행시킴

사실, 개발자인 우리 입장에서는 JDK만 설치하면 JRE가 포함되어 있기 때문에, JRE를 따로 설치할 필요가 없습니다.
따라서 처음부터 JDK만 설치하면 충분합니다.

 

JDK 다운로드 링크입니다.

https://www.oracle.com/kr/java/technologies/downloads/#jdk24-windows

'JAVA' 카테고리의 다른 글

[Java] GC(가비지 컬렉션)이란?  (1) 2025.04.21
[Java] Java 의 주요 특징  (2) 2025.04.17
[JAVA] 객체지향 언어 JAVA  (0) 2025.04.16
[JVM] JVM이 무엇일까?  (0) 2025.04.16
[복습] GetMapping 과 RequestMapping 의 차이  (0) 2025.04.15
'JAVA' 카테고리의 다른 글
  • [Java] GC(가비지 컬렉션)이란?
  • [Java] Java 의 주요 특징
  • [JAVA] 객체지향 언어 JAVA
  • [JVM] JVM이 무엇일까?
동준1234
동준1234
공부 기록
  • 동준1234
    dongjundev
    동준1234
  • 전체
    오늘
    어제
  • GitHub
    • 분류 전체보기 (150)
      • 일상 (1)
      • 복습 및 회고록 (26)
      • Spring (17)
      • JAVA (32)
      • kubernetes (1)
      • Front-End (13)
      • Server (11)
      • SQL (20)
        • JDBC (1)
      • 자격증 (7)
        • 정보처리기사 필기 준비 (6)
        • 정보처리기사 실기 준비 (0)
        • SQLD (1)
      • project (18)
        • 백준 및 코딩테스트 공부 (6)
        • 대학교 캡스톤 디자인 (6)
        • 4학년 캡스톤 디자인 및 전시회 (3)
      • 네트워크 (3)
      • AI 머신러닝 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    jQuery
    react
    개발자
    프론트
    JavaScript
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
동준1234
[JDK | JRE] JDK 와 JRE 의 차이는 무엇일까?
상단으로

티스토리툴바