我在笔记本电脑上使用 Windows 7。我正在使用仅适用于 32 位 JDK 的 jpcap 库。在我的机器上安装了 32 位和 64 位 JDK。如何在 64 位和 32 位 JDK 之间切换?
我尝试更改%JAVAHOME%
and%PATH%
环境变量,但没有奏效。我应该更改注册表中的任何内容吗?
我在笔记本电脑上使用 Windows 7。我正在使用仅适用于 32 位 JDK 的 jpcap 库。在我的机器上安装了 32 位和 64 位 JDK。如何在 64 位和 32 位 JDK 之间切换?
我尝试更改%JAVAHOME%
and%PATH%
环境变量,但没有奏效。我应该更改注册表中的任何内容吗?
@Srikant Sahay,非常感谢!它确实适用于 widnows 8.1 64 位操作系统。
我能够按需在 Windows 8.1 上的 32 位和 64 位 JDK 平台之间切换。正如 Srikant 所建议的,诀窍是在所有其他路径变量之前设置路径。确保将拳头放在路径变量中。
java -d32 -version ( or simply )
java -version
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode, sharing)
但是,一次只有一个实例有效。您选择 32 位版本或 64 位版本。所以,如果你输入“java -d64 -version”,你会得到
Error: This Java instance does not support a 64-bit JVM.
Please install the desired version.
因此,如果您想要一个 64 位 JVM,您应该首先将 JDK 安装文件夹(在我的情况下是“C:\Program Files\Java\jdk1.7.0_51\bin”,因为默认情况下操作系统是 64 位)放在路径变量中.
干杯!
您可以设置路径,也可以在 IDE 中的 JDK 之间切换。我个人使用 JetBrains IntelliJ IDEA 并通过 IDE 设置 JDK。
通过 IDE 设置:
从项目内部:
从一个新项目:
如果要设置路径:
按照java.com 站点上列出的说明进行操作。请记住,您的 jar 将使用 PATH 中指定的任何 java 版本运行。
如果您的 PATH 变量不起作用,请尝试通过删除不必要的条目并重新启动来清理您的路径变量。重新启动后,将 Java 添加到路径并再次重新启动。
如果您仍然遇到问题,请尝试使用您尝试使用的 java 版本的绝对路径执行以确保其正常工作。如果它确实有效,请检查您的路径变量以确保它是准确的。
在 System Environment Variables PATH 变量中设置您的 java 的路径。将其设置在任何其他路径之前(如果那里存在 java 或 javaw,甚至是 System 32)。
不,不要触摸注册表。每个正在运行的 Java 应用程序都会获得一个唯一的 JVM 实例。因此,据我所知,单个 java 程序无法在一个 JVM 中运行某些部分代码,而在另一个 JVM 中运行其他部分代码。但是,您可以选择运行特定 java 程序的 JRE,这样您就可以在 32 位 java 版本中运行整个 jpcap 程序。使用指向 java.exe 确切位置的启动脚本(批处理文件)。当您运行“java MyClassName”时,它实际上只是在PATH
环境变量中找到 java 可执行文件,因此通过明确指定您的路径,您可以选择您的版本。换句话说,如果你使用“java MyClassName”运行一个 java 程序(或者如果你的机器上的一个程序这样做),它将使用你的 java.exe 应用程序。PATH
环境变量。应用程序本身可以使用他们选择的任何环境变量:通常用于 java 的环境变量是JAVA_HOME
和JRE_HOME
. 所以你可能想尝试设置这两个,然后再次尝试运行你的程序。