"错误:此Java实例不支持32位JVM。" [1]"请安装所需的版本。"

时间:2016-06-30 13:07:08

标签: java macos jvm processing jdk6

我正在使用Processing 1.5.1 for Mac OS X El Capitan,当我在我的应用程序上运行某些代码时,它会显示该消息。当我输入java -version时,我得到:

java version "1.6.0_65" Java(TM) SE Runtime Environment (build 1.6.0_65-b14-468-11M4833) Java HotSpot(TM) 64-Bit Server VM (build 20.65-b04-468, mixed mode)

当我输入/ usr / libexec / java_home -V时,我得到:

Matching Java Virtual Machines (3):
1.8.0_65, x86_64:   "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home
1.6.0_65-b14-468, x86_64:   "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_65-b14-468, i386: "Java SE 6" /Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.8.0_65.jdk/Contents/Home

我已尝试将JAVA_HOME设置为:

export JAVA_HOME=`/usr/libexec/java_home -v 1.6.0_65-b14-468`

但是当我重新打开处理时,它仍会显示相同的错误。任何帮助或建议强制它运行JVM 32位?

2 个答案:

答案 0 :(得分:1)

在Mac上选择JVM很痛苦。我用Jenv。您可以尝试使用jenv来选择特定的Java版本。

  

brew install jenv

或者看看这里:

http://www.jenv.be/

您需要注册JVM以进行设置,但您可以为特定目录设置默认JVM和默认本地JVM。非常方便。

您可能需要运行以下正确设置JAVA_HOME:

  

jenv exec [你的应用]

祝你好运。

答案 1 :(得分:1)

处理1.5很老了。除非你有一个非常具体的理由,否则我不会使用它。即便如此,你应该尝试找一个解决方法。

相反,如果可能的话,您应该尝试使用最新版本的Processing(现在,版本3.1.1)。但是您使用的是尚未升级的库,因此您必须依赖2.2.1。

版本2.2.1 added a bunch of stuff超过处理1.5,包括:

  

更好 32位和64位支持。我们现在支持单独的32位和64位库,并添加了单独的32位和64位版本的Processing下载。在Mac OS X上,您甚至可以选择要使用的模式。

我不知道这究竟是什么解决了你的问题,但我敢打赌,Processing 2.2.1添加了某些东西解决了这个问题。

只要您的图书馆升级到处理3,您就应该升级处理版本。