JRE和JDK的区别和联系

2016-01-18 12:56:08 7317

Jdk 是java development kit,是java的开发工具包,里面包含了各种类库和工具。当然也包括了另外一个Jre. 那么为什么要包括另外一个Jre呢?

而且jdk/jre/bin同时有client和server两个文件夹下都包含一个jvm.dll。说明是有两个虚拟机的。

Jre 是java runtime environment, 是java程序的运行环境。既然是运行,当然要包含jvm,也就是大家熟悉的虚拟机啦,还有所有java类库的class文件,

都在lib目录下打包成了jar。大家可以自己验证。至于在windows上的虚拟机是哪个文件呢?学过MFC的都知道什么是dll文件吧,那么大家看看jre/bin/client里面是不是有一个jvm.dll呢?那就是虚拟机。

记得在环境变量path中设置jdk/bin路径麽?不设置的话javac和java是用不了的。

设置环境变量:我的电脑右键-属性-高级-环境变量-系统变量(新建JAVA_HOME,CATALINA_HOME,CLASSPATH 直接编辑PATH)

JAVA_HOME     变量值为: D:Javajdk1.5.0_11

若是JDK+TOMCAT安装与配置则

CATALINA_HOME 变量值为: D: omcat5.5.20

CLASSPATH     变量值为: .;%JAVA_HOME%lib ools.jar;%JAVA_HOME%libdt.jar;%CATALINA_HOME%commonlib;

PATH          在变量值的尾部添加: ;%JAVA_HOME%in;%CATALINA_HOME%in;

确实jdk/bin目录下包含了所有的命令,但是我们用的java命令并不是 jdk/bin目录下的而是jre/bin目录下的。

简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。 
JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。
JRE的地位就象一台PC机一样,我们写好的 Win32应用程序需要操作系统帮我们运行,同样的,我们编写的Java程序也必须要JRE才能运行。
所以当你装完JDK后,如果分别在硬盘上的两个不同地方安装了两套JRE,那么你可以想象你的电脑有两台虚拟的Java PC机,都具有运行Java程序的功能。
所以我们可以说,只要你的电脑安装了JRE,就可以正确运行Java应用程序。 




提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: