洋芋博客

一个什么都分享的博客

JDK、JRE、JVM区别

JDK(Java Development Kit,Java开发工具包) ,是整个JAVA的核心,包括了Java运行环境JRE(Java Runtime Envirnment),一堆Java工具(javac/java/jdb等)和Java基础的类库。

JRE(Java Runtime Environment Java运行环境) ,是 JDK 的子集,也就是包括 JRE 所有内容,以及开发应用程序所需的编译器和调试器等工具。

JVM(Java Virtual Machine,Java虚拟机), 是JRE的一部分。它是整个Java实现跨平台的最核心的部分,负责解释执行字节码文件,是可运行Java字节码文件的虚拟计算机。

简单来说,JRE可以支撑Java程序的运行,包括JVM虚拟机(java.exe等)和基本的类库(rt.jar等),JDK可以支持Java程序的开发,包括编译器(javac.exe)、开发工具(javadoc.exe、jar.exe、keytool.exe、jconsole.exe)和更多的类库(如tools.jar)等。

所以,如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。不过现在的jdk都帮我们集成了jre,所以安装jdk就等于安装了两个。

为什么安装JDK要配置环境变量

这里以windows为例,path(环境变量)是dos以前的内部命令,windows继续沿用至今。用作运行某个命令的时候,本地查找不到某个命令或文件,会到这个声明的目录中去查找。

因为java必须经过编译才能运行,编译就要通过常用命令比如:编译javac等,这些常用的编译命令就存放在jdk的bin目录,而window运行java编译命令的时候,本地查找不到某个命令或文件,会到path中去查找。所以不可能在每个java文件所在目录放置jdk,故把jdk放置path环境变量中,这样每个java文件都可以通过path中设定的jdk目录找到编译命令进行编译。一般设定java的时候为了在任何目录下都可以运行bin文件夹下的命令,就将java的bin目录声明到path中,编译后的class类就要通过jre运行环境进行运行实现。

(本文章内容来源于网络,如有侵权,请联系删除)

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注