如何在Mac OS X 10.8 [Mountain Lion]上的safari中启用32位Java

时间:2013-07-01 05:36:49

标签: java macos safari osx-lion

我在Mac OS X 10.8上启用了Apple提供的Java 6。它的工作正常但唯一的问题是我需要运行的applet仅适用于32位Java插件。我不能在java偏好中选择32到64之间,反之亦然。我也试过在32模式下运行safari和firefox,但没有帮助。

我已经想通过使用-d32开关使其在终端中工作。但是,如何在safari中使用此开关,我不确定。

编辑:请注意我已经提供了Java 6。我只需要在safari或firefox中启用32位插件。

3 个答案:

答案 0 :(得分:1)

据我所知,Apple已经更新了禁用Java插件并从Utilities文件夹中删除Java Preferences.app。您可能需要重新启用Java插件。

由于Java 7只运行64位应用程序,因此唯一的解决方案是按照Apple编写的步骤重新安装Java 6:

http://support.apple.com/kb/HT5559?viewlocale=en_US

编辑或者,尝试以32位模式运行Safari:steps here.

答案 1 :(得分:1)

我遇到了和你一样的问题。

无论我怎么努力,Java 1.6仍然以64位模式运行。

我的最后一招是考虑如何禁用二进制的64位功能,以便只能选择32位模式....

在这里回答:

关键是用32位模式二进制文件替换/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java。

  1. 使用" xxd -g1 java | grep -E' c。 FA'"找出二进制标题。
  2. xxd -g1 java | grep -E 'c. fa'
    0001000: ce fa ed fe 07 00 00 00 03 00 00 00 02 00 00 00
    000c4b0: 01 28 6f d8 ce 3b 3a b0 c9 cd fa 87 b1 35 df 08
    000d000: cf fa ed fe 07 00 00 01 03 00 00 80 02 00 00 00
    000f060: 00 0f 84 c7 fa ff ff 48 8d 3d 96 39 00 00 be 01
    

    07 00 00 00是32位的。 1

    因此,32位二进制文​​件从0x1000开始,到0xd000结束,长度为0xc000。

    1. 使用你喜欢的工具....(例如dd)为我提取32位模式二进制文件我喜欢xxd,因为它的语法更容易记住。使用"文件java"。

    2. 进行验证
    3. 备份原始的java二进制文件。

    4. 替换" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java"在步骤2中使用提取的32位模式仅二进制二进制文件。

    5. 测试!如果未显示Java控制台,并且没有Java首选项来打开它,则可以使用〜/ Library / Caches / Java中的deployment.properties文件并添加" deployment.console.startup.mode = SHOW&# 34;

答案 2 :(得分:0)

您可以将参数-d32直接传递给applet param标记。

<applet> <params name="java_arguments" value="-d32" /> ... </applet>

请注意,它必须是第一个applet参数。 仅适用于java 1.6,因为1.7和1.8在mac os上没有32位版本。 使用OS X 10.8.3

测试safari,chrome和firefox