Oracle JDK安装两个JRE?

D.R*_*.R. 5 java jce java-7

前downvoting接近要求时这个问题,请看到这个问题是关于JDK 7中没有6,它具有不受任何重复的线程解决的第二个问题,"Q2"这个问题是关于4不仅2个的java.exe实例.谢谢!


我刚刚安装了Oracle的Java SE JDK(64位),这导致了以下目录布局,并且不知何故有两个 JRE:

C:\Program Files\Java\
    \jdk1.7.0_40
        \jre
    \jre7
Run Code Online (Sandbox Code Playgroud)

我现在是四个 java.exe可执行文件的自豪拥有者:

C:\Program Files\Java\jdk1.7.0_40\bin\java.exe
C:\Program Files\Java\jdk1.7.0_40\jre\bin\java.exe
C:\Program Files\Java\jre7\bin\java.exe
C:\Windows\System32\java.exe
Run Code Online (Sandbox Code Playgroud)

Q1:我应该将哪一个放入我的搜索路径来执行基于Java的应用程序?

Q2:我是否需要将无限制JCE策略文件放入我的搜索路径中相应JRE的安全子目录中,或者也放入所有其他目录中才能正常工作?

Sud*_*sun 9

安装JDK时,您将自动安装JRE副本.您无需单独安装JRE副本.但这将是您的目录结构.

JDK文件夹中的JRE副本用于JRE的私有副本.

安装JDK会安装私有Java SE运行时环境(JRE)和可选的公共副本.私有JRE需要运行JDK附带的工具.它没有注册表设置,完全包含在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平台).