bin的java.exe和jre的java.exe之间的区别?

时间:2011-08-04 05:56:42

标签: java

我是java的新手。我有一个混乱,使用解释器来执行java程序,因为我可以看到bin文件夹中的两个java.exe和&其他里面的jre的bin文件夹。

等待专家的宝贵答案!!!

我想添加一些细节来清除我的查询:

假设java安装在C:\ Program Files \ Java \ Jdk1.6中,现在,在这个目录中有jre文件夹,bin文件夹&其他文件夹,但让我们专注于这两个。这个.. \ jre \ bin文件夹包含java.exe& .. \ bin文件夹中还包含java.exe所以,我关心的是哪个java解释器用于执行java程序。

我希望这有助于你更好地理解我的问题

7 个答案:

答案 0 :(得分:9)

从Java SE安装说明:

http://www.oracle.com/technetwork/java/javase/documentation/install-windows-142126.html#private

  

安装JDK会安装私有Java SE运行时环境(JRE)和可选的公共副本。运行JDK附带的工具需要私有JRE 。它没有注册表设置,完全包含在jre目录中(通常位于C:\Program Files\jdk1.6.0\jre),其位置仅为JDK所知。另一方面,公共JRE 可以被其他Java应用程序使用,包含在JDK之外(通常在C:\Program Files\Java\jre1.6.0),在Windows注册表中注册(在HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft)可以使用“添加/删除程序”删除,可能会也可能不会在浏览器中注册,并且可能会也可能不会将java.exe复制到Windows系统目录(使其成为默认的系统Java平台)。

所以我认为在执行Java程序时应该使用/ bin目录中的可执行文件。

答案 1 :(得分:1)

JRE:Java运行时环境。它基本上是运行Java程序的Java虚拟机。它还包括用于Applet执行的浏览器插件。

JDK:它是用于Java的全功能软件开发工具包,包括JRE,以及用于创建和编译程序的编译器和工具(如JavaDoc和Java Debugger)。

通常,当您只关心在浏览器或计算机上运行Java程序时,您只会安装JRE。这就是你所需要的一切。另一方面,如果您计划进行一些Java编程,那么您还需要JDK。

有时,即使您不打算在计算机上进行任何Java开发,仍然需要安装JDK。例如,如果要使用JSP部署WebApp,那么从技术上讲,您只是在应用程序服务器中运行Java程序。那你为什么需要JDK呢?因为应用服务器会将JSP转换为Servlet并使用JDK来编译servlet。我相信可能会有更多的例子。

答案 2 :(得分:1)

检查java.home属性。它应该指向一个或另一个。我来了..

Name        Value
java.home   C:\Program Files\Java\jre6

答案 3 :(得分:1)

请检查java.exe个文件的文件大小和档案。

应该是一样的。

在我看来,JDK是JRE的一种超集。因此,如果您需要更多工具来构建或编译,那么JDK就是您的最佳选择。否则你可以使用JRE

答案 4 :(得分:0)

如果您安装了JRE,则java.exe应该在这里 C:\ Program Files \ Java \ jre6 \ bin

如果你安装了JDK,那么java.exe将在两个地方: C:\ Program Files \ Java \ jdk1.6.0_25 \ bin C:\ Program Files \ Java \ jdk1.6.0_25 \ jre \ bin

如果你同时安装了jdk和jre,你可以将C:\ Program Files \ Java \ jdk1.6.0_25 \ jre与C:\ Program Files \ Java \ jre6 \ bin进行比较,它们几乎或完全相同,你可以使用其中任何一个的java.exe,但我想大多数人都会使用C:\ Program Files \ Java \ jdk1.6.0_25 \ bin中的那个

答案 5 :(得分:0)

对于您提供的路径,我认为您使用的是Windows。

现在,您正在使用哪个java.exe

这可能取决于您正在执行的内容。如果您正在运行 applet jar Java Web Start ,您将使用其中的java.exe bin环境变量指向的PATH目录。此外,如果您打开控制台并执行java,您将运行“PATH”变量指向的java.exe。 如果您正在运行.bat文件,请检查它是否使用了不同的环境变量。通常使用JAVA_HOMEJAVA_SDK

答案 6 :(得分:0)

从我的知识中我可以说没有区别除了jdk和jre的目的两个java.exe是相同的