나의 답:
JRE (Java Runtime Environment) : 자바가 실행되기 위해 필요한 환경 속을 들여다 보면 라이브러리들이 모여있다. 예전 인터넷에서 어떤 프로그램을 실행하기 전에 자바환경을 깔고 사용해야했던 것을 기억하면 쉽다. 그것이 바로 JRE이기 때문. JRE를 깔면 JAVA로 작성된 프로그램을 실행시킬 수 있다. 현재는 사용자가 JRE를 깔지 않아도 프로그램을 실행시킬 수 있도록 발전되었기 때문에 사용자 입장에서 더이상 설치하지 않는 프로그램이다.
JDK (Java Development Kit) : 자바 개발 도구 말그대로 개발자가 자바 언어로 프로그램을 개발하기 위해 필요한 도구 모음이다. 자바를 실행시켜야하기 때문에 당연히 JRE를 포함하고 있고 JDK를 다운받아야 자바언어로 프로그램을 개발할 수 있다.
JVM ( Java Virtual Machine) 자바 언어는 사람이 알아듣는 언어(고급언어)로, 컴퓨터가 알아들을 수 있는 언어(저급언어, 기계어)가 아니다. 그렇기 때문에 컴파일러라는 번역기를 통해 기계어로 번역이 되어야 하는데 이 과정을 컴파일이라고 한다. 자바 언어가 컴파일 되면 ~.class라는 기계어를 담은 파일이 생성된다. 하지만 컴파일 된 기계어라고 해도 OS마다 사용하는 기계어가 달라 해당 프로그램을 실행하려면 각 컴퓨터의 OS에 맞게 또 다시 번역해야 하는 사태가 벌어질 수 있다. 이를 해결하기 위해 등장한 것이 JVM. JVM은 컴파일 된 ~.class 형태의 기계어를 컴퓨터 기종과 OS환경에 상관 없이 알아들을 수 있는 언어로 변경해준다.
포함관계는 다음과 같다
JDK>JRE>JVM (여기서 소괄호는 포함 관계를 나타낸다. JDK는 JRE를 포함하고 있으며 JRE는 JVM을 포함하고 있다)
 
 
 
친구의 답:
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)도 함께 포함되어 있다.
일반적으로 컴퓨터에서 Java 프로그램을 실행하는데만 포커스를 둔다면, JRE만 설치하면 된다. 반면에, Java 프로그래밍을 할 계획이라면 JDK를 설치해야 한다.   Java 프로그래밍을 수행할 계획이 없더라도 JDK를 설치해야 하는 경우가 있다. 예를 들어 JSP를 사용하여 웹 애플리케이션을 배포하는 경우 기술적으로는 애플리케이션 서버 내에서 Java 프로그램을 실행하는 것이기 때문에 JDK가 필요하다. 애플리케이션 서버는 JSP를 Java 서블릿으로 변환하고 JDK를 사용하여 servlet을 컴파일해야 하기 때문이다.

'IT > 잡다' 카테고리의 다른 글

로봇테스트  (0) 2023.04.24
CORS  (0) 2023.04.24
쿠버네티스  (0) 2023.04.24
도커  (0) 2023.04.24
동기와 비동기  (0) 2023.04.24