jdk和jre有什么差异?_jdk与jre的区别
java的产物线很是富厚,第一次去java官方网站找资料的伴侣必定会目眩,好比说jdk与jre这两大类软件,官方只有英文声名,你能分清它们的寄义吗? 着实别说大部门初出茅庐的“平凡青年,”,许多措施员就算干了一段时刻java,也依然不大白jdk与jre的区别。PC6小编找来了一篇资料,辅佐各人领略什么是jdk与jre。 必要JRE的伴侣,可到这里下载最新版的Java Runtime Environment(JRE)。 JDK是Java Development Kit.简朴的说JDK是面向开拓职员行使的SDK,它提供了Java的开拓情形和运行情形。SDK是Software Development Kit 一样平常指软件开拓包,可以包罗函数库、编译措施等。 假如安装了JDK,会发同你的电脑有两套JRE,一套位于 jre 其它一套位于 C:Program FilesJavajre1.5.0_15 目次下,后头这套比前面那套少了Server端的Java假造机,不外直接将前面那套的Server端Java假造机复制过来就行了。并且在安装JDK可以选择是否安装这个位于 C:Program FilesJava 目次下的JRE.假如你只安装JRE,而不是JDK,那么只会在 C:Program FilesJava 目次下安装独一的一套JRE. JRE的职位就象一台PC机一样,我们写好的Win32应用措施必要操纵体系帮我们运行,同样的,我们编写的Java措施也必必要JRE才气运行。以是当你装完JDK后,假如别离在硬盘上的两个差异处所安装了两套JRE,那么你可以想象你的电脑有两台假造的Java PC机,都具有运行Java措施的成果。以是我们可以说,只要你的电脑安装了JRE,就可以正确运行Java应用措施。 1、为什么Sun要让JDK安装两套沟通的JRE? 这是由于JDK内里有许多用Java所编写的开拓器材(如javac.exe、jar.exe等),并且都安排在 libtools.jar 里。从下面例子可以看出,先将tools.jar更名为tools1.jar,然后运行javac.exe,表现如下功效: Exception in thread “main” java.lang.NoClassDefFoundError: com/sun/tools/javac /Main 这个意思是说,你输入javac.exe与输入 java -cp c:jdklibtools.jar com.sun.tools.javac.Main 是一样的,会获得沟通的功效。 从这里我们可以证明javac.exe只是一个包装器(Wrapper),而建造的目标是为了闪开拓者免于输入太长的指命。并且可以发明lib目次下的措施都很小,不大于2 9K,从这里我们可以得出一个结论。就是JDK里的器材险些是用Java所编写,以是也是Java应用措施,因此要行使JDK所附的器材来开拓Java措施,也必必要自行附一套JRE才行,以是位于C:Program FilesJava目次下的那套JRE就是用来运行一样平常Java措施用的。 2、假如一台电脑安装两套以上的JRE,谁来抉择呢? 这个重大使命就落在java.exe身上。Java.exe的事变就是找到吻合的JRE来运行Java措施。 Java.exe依照底下的次序来查找JRE:本身的目次下有没有JRE;父目次有没有JRE;查询注册表: [HKEY_LOCAL_MACHINESOFTWAREJavaSoftJava Runtime Environment] 以是java.exe的运行功效与你的电脑内里哪个JRE被执行有很大的相关。 ADD:(小小结) 2.JRE -- java runtime environmentJRE是指java运行情形。光有JVM还不能成class的执行,由于在表明class的时辰JVM必要挪用表明所必要的类库lib.在JDK的安装目次里你可以找到jre目次,内里有两个文件夹bin和lib,在这里可以以为bin里的就是jvm,lib中则是jvm事变所必要的类库,而jvm和 lib和起来就称为jre.以是,在你写完java措施编译成。class之后,你可以把这个。class文件和jre一路打包发给伴侣,这样你的伴侣就可以运行你写措施了。(jre里有运行。class的java.exe) 3.JDK -- java development kitJDK是java开拓器材包,根基上每个学java的人城市先在呆板上装一个JDK,那他都包括哪几部门呢?让我们看一下JDK的安装目次。在目次下面有六个文件夹、一个src类库源码压缩包、和其他几个声明文件。个中,真正在运行java时起浸染的是以下四个文件夹:bin、include、lib、 jre.此刻我们可以看出这样一个相关,JDK包括JRE,而JRE包括JVM.bin:最首要的是编译器(javac.exe)include:java和JVM交互用的头文件lib:类库jre:java运行情形(留意:这里的bin、lib文件夹和jre里的bin、lib是差异的)总的来说JDK是用于java措施的开拓,而jre则是只能运行class而没有编译的成果。 eclipse、idea等其他IDE有本身的编译器而不是用JDK bin目次中自带的,以是在安装时你会发明他们只要求你选中jre路径就ok了。 相识了jdk与jre的区别,我想信托java初学者搭建软件情形、行使java器材的疑惑也就办理了,这点常识很少有册本提到,自学者必然要看,但愿能给各人带来一点辅佐! (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |