Java 为什么有2个箱子用于exe';什么是jdk?
在安装JDK(TM)Update 10时,它会安装以下四个功能: ->开发工具 ->演示和样本 ->源代码 ->Java数据库 对于最后三个特性,我一点问题都没有Java 为什么有2个箱子用于exe';什么是jdk?,java,Java,在安装JDK(TM)Update 10时,它会安装以下四个功能: ->开发工具 ->演示和样本 ->源代码 ->Java数据库 对于最后三个特性,我一点问题都没有 现在,开发工具包括:- java开发工具包(用于开发java应用程序,这里是jdk1.6.0_10) 公共jre(如果您想运行java应用程序而不管jdk,这里是jre6,则始终需要公共jre) jdk(jdk1.6.0_10)包含: jre、bin等等。 jre目录也有一个bin目录 在我的windows计算机上,我已设置路径值
现在,开发工具包括:-
在我的windows计算机上,我已设置路径值:- path=C:\Program Files\Java\jdk1.6.0\u 10\bin强> 这意味着我正在使用jdk1.6.0_10\bin的javac.exe编译.java文件和 java.exe也来自jdk1.6.0_10\bin,而不是jdk1.6.0_10\jre\bin,用于解释.class文件 javaw.exe也来自jdk1.6.0_10\bin,而不是jdk1.6.0_10\jre\bin,用于解释.class文件 此外,jdk1.6.0\u 10\bin还有appletviewer.exe,jar.exe,jarsigner.exe,java rmi.exe,javadoc.exe,javap.exe,rmic.exe,rmiregistry.exe,我经常使用,还有一些exe 另外,jdk1.6.0_10\bin和jdk1.6.0_10\jre\bin都有一些共同的和不同的exe
如果开发人员想要开发和测试java应用程序,jdk1.6.0_10\bin就足够了(因为它包含了BOLD中提到的所有上述exe),如果 用户想要使用java应用程序,那么一个公共jre就足够了(这是JDK附带的,如果你不是开发人员或者没有安装JDK,你也可以单独下载) 我不明白的是 ->当运行时(java.exe、javaw.exe)或绑定(rmiregistry.exe)所需的所有exe(上述在粗体+斜体中提及)都出现在jdk1.6.0_10\bin中时 让我困惑的是
为什么jdk在jdk1.6.0_10目录中提供jre???如果您选择,jre目录包含可以随应用程序重新分发的文件(请参见
jre/README.txt
)。很难理解您真正想要的是什么,但是jdk\bin和jdk\jre\bin中的java.exe是相同的:
C:\Program Files\Java\jdk1.6.0_13>md5sum bin\java.exe
\ee21961559a99f6ab3967e709563cc03 *bin\\java.exe
C:\Program Files\Java\jdk1.6.0_13>md5sum jre\bin\java.exe
\ee21961559a99f6ab3967e709563cc03 *jre\\bin\\java.exe
我想你真的在问“如果你安装了JDK,在其中安装一个包含的JRE有什么意义?”。我认为您必须询问Sun才能真正得到正确的答案,但我认为这是为任何想要运行/测试其应用程序(他们正在开发)的人准备的在JRE环境中,而不是在成熟的JDK环境中。有两个相同的文件,但在JDK中使用JRE的主要原因是
JRE\lib\
目录,其中包含运行Java所需的大部分内容,主要是包含主类文件的DLL和rt.jar
为了减少已安装文件的大小,JDK命令还将查看jre\lib\
Sun的同事们在bin\
中复制了一些文件,以使您的生活更加简单:只要在您的路径中有JDKbin
目录,而不是两者都有,通常就足够了
PS:安装程序还将
java.exe
的副本放在Windows\system32\
目录中。JRE是java运行时环境,还附带java程序,用于重定向需要使用java的应用程序。当您请求一个需要java的网页时,必须有一个程序监听这些请求并适当地使用java来创建正确的响应。
Java不仅仅是一个开发工具包:它是一种编程语言。您从网站下载的是开发工具包+运行时环境。可以在此处找到问题的答案:
jdk1.6.0_10\JRE\bin中的私有JRE由与JDK捆绑的应用程序使用。请不要管它。thnx McDowell先生,非常感谢您在网上提供一些详细的解释或参考资料。:-)@丽兹:看看你的硬盘。