如何在 Windows 上更改 Java 运行时版本 (7)?更改 Windows 7 上的 Java 默认 VM
如何在Windows上更改Java运行时版本。
我为一些测试安装了Java 7,现在我需要旧的java6作为系统默认值,但我不想卸载Java 7(我需要它进行以后的测试)。是否可以在控制面板/Java/JRE 选项卡中更改系统使用的 JRE?我可以更改/编辑/添加/删除用户使用的版本,但不能更改/编辑/添加/删除系统使用的版本。
如何在Windows上更改Java运行时版本。
我为一些测试安装了Java 7,现在我需要旧的java6作为系统默认值,但我不想卸载Java 7(我需要它进行以后的测试)。是否可以在控制面板/Java/JRE 选项卡中更改系统使用的 JRE?我可以更改/编辑/添加/删除用户使用的版本,但不能更改/编辑/添加/删除系统使用的版本。
对于 Java 应用程序,即(通常)作为文件交付并使用或通过执行相同操作的快捷方式启动的程序,将启动的 JRE 将是 ..jar
java -jar xxx.jar
PATH
如果您安装了 JRE 或 JDK,则可能找到 s 的位置位于目录(如 .但是,我发现一些“开箱即用”的Windows安装(也?)具有和 in(NT和2000)或(Windows 95,98)的副本。这通常是一个非常古老的Java版本:1.3,也许?您需要在命令窗口中检查您是否没有运行某些过时的Java版本。.exe
C:\Program Files\JavaSoft\JRE\x.y.z
java.exe
javaw.exe
C:\winnt\system32
C:\windows\system
java -version
当然,您可以通过在命令行或快捷方式定义中显式声明java.exe / javaw.exe的路径来覆盖PATH设置,甚至不覆盖PATH设置。
如果您从浏览器运行小程序,或者可能也运行 Java Web Start 应用程序(只要它们有自己的窗口,它们看起来就像应用程序,但您可以从浏览器启动它们),JRE 的选择由一组注册表设置决定:
Key: HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment
Name: CurrentVersion
Value: (e.g.) 1.3
使用以下方案创建更多注册表项:
(e.g.)
HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\1.3
HKEY_LOCAL_MACHINE\Software\JavaSoft\Java Runtime Environment\1.3.1
即一个用于主要版本,另一个包含次要版本号。这些键中的每一个都有如下值(所示示例):
JavaHome : C:\program Files\JavaSoft\JRE\1.3.1
RuntimeLib : C:\Program Files\JavaSoft\JRE\1.3.1\bin\hotspot\jvm.dll
MicroVersion: 1
...您的浏览器将查看这些设置以确定要启动的 JRE。
由于Java版本变化非常频繁,现在有一个名为“Java控制面板”的“向导”,用于手动切换浏览器的Java版本。这适用于IE,Firefox以及Opera和Chrome等其他应用程序:它是Windows应用程序中的“Java”小程序。您可以选择任何一个已安装的 JRE。我相信向导会摆弄这些注册表项。System Settings
如果你像我一样,通过简单地擦除目录来“卸载”旧的Java版本,你也会在选择中找到这些“幽灵”;因此,请确保您选择的 JRE 对应于完整的 Java 安装!
其他一些答案是建议设置环境变量 。与此同时,这是过时的建议。Sun 在 Java 2 年左右意识到,这个环境设置是JAVA_HOME
几乎没有任何现代Java软件需要或尊重环境变量。JAVA_HOME
更多信息:
...以及有关多版本支持的一些有用信息:
我曾经在类UNIX机器上工作,但最近我不得不在Windows 7机器上使用Java做一些工作。我遇到了这个问题,这就是我已经解决的问题。它对我来说很有效,所以我希望它可以用来将来可能有这个问题的人。
这些步骤是在考虑在驱动器 C 上进行缺省 Java 安装时公开的。您应该更改必要的内容,以防您的安装不是默认安装。
假设我们已经安装了Java 8,但无论出于何种原因,我们都想继续使用Java 7。
1-以管理员身份启动cmd
2- 转到C:\ProgramData\Oracle\Java
3- 将当前目录 javapath 重命名为javapath_<version_it_refers_to>。例如:rename javapath javapath_1.8
4- 创建javapath_<version_you_want_by_default>目录。例如:mkdir javapath_1.7
5-cd进入它并创建以下链接:
cd javapath_1.7
mklink java.exe "C:\Program Files\Java\jre7\bin\java.exe"
mklink javaw.exe "C:\Program Files\Java\jre7\bin\javaw.exe"
mklink javaws.exe "C:\Program Files\Java\jre7\bin\javaws.exe"
6- cd输出并创建一个指向所需javapath的目录链接javapath。例如:mklink /D javapath javapath_1.7
7- 打开寄存器并将密钥HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment\CurrentVersion 更改为值 1.7
此时,如果您执行,您应该看到您正在使用java版本1.7:java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
8-最后,最好JAVA_HOME创建环境变量。为此,我在C:\Program Files\Java中创建了一个名为CurrentVersion的目录链接,指向我感兴趣的Java版本。例如:
cd C:\Program Files\Java\
mklink /D CurrentVersion .\jdk1.7.0_71
9-一旦完成: