[JAVA] JVM이 무엇인가, JDK와 JRE의 차이

뽕칠이·2024년 1월 8일
0

JVM(Java Virtual Machine)

''Java는 어떠한 플랫폼에 영향을 받지 않는다.''

  • 자바 프로그램 실행환경을 만들어주는 S/W이다.
  • java 소스코드(.java)를 JVM을 통해 OS에 도달하기 때문에 Java Compiler가 .java파일을 .class로 변환시키고 모든 플랫폼에서 동작하도록 할 수 있다.

    class파일은 바이트 코드라고 하는데 자바 코드를 기계어로 변환시키는 중간 단계라고 생각하면 된다.

JDK(Java Development Kit)

  • JDK에는 개발 시 필요한 라이브러리들과 개발도구(Development Tools)들이 포함되어 있고 JRE 또한 포함되어 있다.

JRE(Java Runtime Environment)

  • JRE에는 자바로 만들어진 프로그램을 실행시키는데 필요한 라이브러리들과 각종 API, 그리고 JVM이 포함되어 있다. -> 자바를 실행하기 위함

사용자 디렉터리 구성요소

  • bin: 자바 개발, 실행에 필요한 도구와 유틸리티 명령

    • bin 디렉터리 안에 들어 있는 개발 프로그램
      • java : 자바 인터프리터, 컴파일러가 생성한 바이트 코드를 해석하고 실행
      • javac : 자바 컴파일러로 자바 소스를 바이트 코드로 컴파일
      • javadoc : 자바 소스로부터 HTML 형식의 API문서 생성
        - jar : 자바 클래스를 압축한 파일 생성, 관리(ex: zip)
  • conf : 여러 종류의 패치 파일

  • lib : 실행 시간에 필요한 라이브러리 클래스들

JDK와 JRE의 차이

JDK 안에 JRE가 존재하고 JDK는 Java 프로그래밍을 위해 필요한 것이고, JRE는 Java 프로그램을 실행시키기 위해 필요한 것이다.

0개의 댓글