Java를 처음 사용할 때 설치를 위해 버전을 찾아보다가 JDK, JRE 버전 2가지가 존재하는 것을 확인했습니다.
문제는 둘의 차이를 모르다보니 어떤 것을 설치해야 하는지 모른다는 것입니다.
JDK와 JRE의 차이
JRE란 무엇인가?
Java Runtime Environment의 약자로 자바 가상 머신(Java Virtual Machine), 자바 클래스 라이브러리(Java Class Library), 자바 명령(Java Command) 및 기타 인프라를 포함한 컴파일된 Java 프로그램을 실행하는데 필요한 패키지 입니다.
포함되어 있는 폴더와 파일에 대해 간단히 살펴보면 다음과 같습니다.
- bin : Java 실행 프로그램이 포함, JVM을 시작하는 java(windows의 경우 javaw)가 포함, keytool 및 policytool과 같은 유틸리티도 포함
- conf : 사용자가 편집할 수 있는 구성파일이 존재
- lib : 여러가지 supporting 파일이 존재, 예를 들어, 일분 .jar 구성 파일, 속성 파일, 글꼴, 번역, 인증서, Java 표준 라이브러리의 .class 파일을 포함하는 모듈이 존재
JDK란 무엇인가?
Java Development Kit의 약자로 Java를 사용하기 위해 필요한 모든 기능을 갖춘 Java용 SDK 입니다. JRE에 있는 모든 것 뿐만 아니라 컴파일러(javac)와 jdb, javadoc과 같은 도구도 존재 합니다.
즉, JDK는 프로그램을 생생성하고 컴파일 할 수 있습니다.
결론은 JDK는 JRE를 포함하고 있습니다.
일반적으로 컴퓨터에서 Java 프로그램을 실행하는데만 포커스를 둔다면, JRE만 설치하면 되지만 Java 프로그래밍을 할 계획이라면 JDK를 설치해야 합니다.
Java 프로그래밍을 수행할 계획이 없더라도 JDK를 설치해야 하는 경우가 있습니다. 예를 들어 JSP를 사용하여 웹 애플리케이션을 배포하는 경우 기술적으로는 애플리케이션 서버 내에서 Java 프로그램을 실행하는 것이기 때문에 JDK가 필요합니다.
애플리케이션 서버는 JSP를 Java 서블릿으로 변환하고 JDK를 사용하여 servlet을 컴파일 해야 하기 때문입니다.
'Java > 기초문법' 카테고리의 다른 글
[Java] 익명 클래스 (0) | 2024.09.11 |
---|---|
[Java] Java를 통해 계산기 만들기(2) (0) | 2024.09.09 |
[Java] Scanner 클래스와 메서드 (0) | 2024.09.05 |
[Java] Java 통해 계산기 만들기(1) (0) | 2024.09.04 |
[Java] 타입 변환 (0) | 2024.08.21 |