查看Applet时,为什么在安装Java并且可用时,Safari for Windows会显示“Java不可用或未安装”?

时间:2012-06-27 22:18:06

标签: windows safari applet java

在Windows 7上使用Safari加载包含任何Java小程序的任何页面时,会出现以下警告:

"Java is Unavailable or Not Installed. Do you want to go to a page where you can download java?"

此消息不正确。这些是安装了Java JRE / JDK的一个或多个实例的开发人员机器,包括1.7.x.许多警报都伴有引用不存在的文件路径的消息,类似于:

"The Java Runtime Environment cannot be loaded from <C:\PROGRA~2\Oracle\JAVAFX~1.1RU\bin\server\jvm.dll>”

以下修复情况的尝试都失败了:

  • 卸载并重新安装各种Java版本。
  • 更新到最新的Java版本。
  • 更改Safari中的安全设置。
  • 转到http://www.java.com/en/download/help/testvm.xml检测到一个甚至没有安装的obtuse版本(Java 2 Runtime Environment,SE v1.4.2_19?!?!)

搜索互联网后发现许多用户遇到类似问题,但没有答案。

如何解决这个问题?

7 个答案:

答案 0 :(得分:9)

虽然许多有关此问题的投诉存在于网上,但针对“Safari Windows jvm.dll JAVAFX”的Google搜索会找到this obscure thread on the Apple Forums

总结一下,问题是当Safari检查Windows注册表中的特定值时,它使用它找到的第一个值而不是正确的值。

修复问题的步骤:

  1. 关闭所有Safari窗口。
  2. 运行regedit.exe
  3. 备份Windows注册表(右键单击根Computer并选择export)。
  4. 转到
    • 32位Windows:HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Plug-in\
    • 64位Windows:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Plug-in\
  5. 检查每个条目;可能不止一个。
    • 某些条目引用了正确的JRE,而有些条目可能引用了JavaFX或其他内容。
    • Java 7可能已经安装了JavaFX。
    • Safari很可能正在选择排在最底层的条目;检查该条目的文件路径引用是无效还是不存在。
  6. 选择..\Java Plug-in\下的错误条目,用手划过,然后将其删除。
  7. close regedit
  8. 重新打开Safari并浏览到a page with an applet。给它一分钟。
  9. 此时,你应该成功。如果它仍然失败,请检查..\Java Plug-in\或父子文件夹..\JavaSoft\下的其他注册表项是否存在无效的文件路径。如果您最近升级了,则先前的安装可能已失效,但注册表项可能尚未删除,可能必须手动删除。
  10. 注意:关于第4步,您的数据可能位于不同的位置;请查看以下评论​​,了解以类似方式解决此问题的其他用户的体验。 请将以下任何备用Windows注册表路径发布为评论。

    感谢Apple支持社区的用户Olivier2011(Olivier Lefevre)(请参阅本答复中的第一个链接),以便用他的解决方案跟进他自己的问题。 Oliver's historical record of the incident from MarkMail.

答案 1 :(得分:2)

在上面尝试但没有奏效。

在C:\ Program Files(x86)\ Safari \ Plugins - .jar和dll

中删除了与java相关的东西

立即工作。

答案 2 :(得分:1)

这是“java在线安装”的问题。

要解决:

  1. 卸载计算机中的所有JavaFX和JRE。
  2. 下载“java offline install”(〜= 20MB)。
  3. 将“java offline install”复制到桌面。
  4. 关闭所有Safari窗口,包括下载窗口。
  5. 安装java。

答案 3 :(得分:1)

实际上,最佳答案,https://discussions.apple.com/thread/3192281?start=0&tstart=0和马库斯教皇的Windows 7位置的解释的组合对我有用。
那就是:
我有窗户7.
在尝试运行java applet(geogebra)时,我收到了Safari

的错误消息
  

无法加载C:\ PROGRA~1 \ Oracle \ JAVAFX~1.0 \ bin \ server \ jvm.dll

因为我的机器上不存在该路径。 这是以下内容的简称:C:\Programme\Oracle\JavaFX Runtime 1.0\etc ...

步骤:

  1. 我关闭了Safari。
  2. 我打开了我的注册表并转到:HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Plug-in
  3. 我找到了2个文件夹(其他人找到了更多)。最高的是10.5.1,在那里我找到了对路径C:\ Program \ Oracle \ JavaFX Runtime 1.0 \ etc的引用。
  4. 我备份了我的注册表,然后删除了这个文件夹。
  5. 我重启了Safari,一切都很好。

答案 4 :(得分:1)

你们可能想查看启动applet的代码,因为它可以指定运行applet的java版本。有一个代码可以指定使用最新的可用代码。您还可以选择卸载Java并使用早期版本对其进行树形化。然而,一些broswers将强制您使用最新版本,因为旧版本存在一些安全风险。

一些可能有帮助的参考链接:

答案 5 :(得分:1)

安装Java 7更新15后,我遇到了与Java类似的问题。

我尝试了上述所有故障排除方法,但都失败了(我没有使用密钥HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Plug-in.引用的插件)。

使用Safari 5.1.7的工作是直接从Oracle下载早期版本的Java(Java 7更新11)(与Safari 5.1.7保存期间使用的版本相同,当Safari 6仅为Mac时)。

步骤如下:

  1. 从机器上卸载Java。
  2. 下载“java offline install”(Java 7更新11)(〜= 30MB)。
  3. 将“java offline install”复制到桌面。
  4. 关闭所有Safari窗口,包括下载窗口。
  5. 安装Java。

答案 6 :(得分:1)

我尝试了上述方法,以及&#39; Luds&#39;工作

我确实有一个插件HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ JavaSoft \ Java插件引用的插件(适用于Java 7更新17) 但是在我从Windows控制面板卸载JAVA 7 Update 17之后,它删除了这个条目。

我尝试了Java 7 Update 17,15,13但没有运气。

适用于Safari 5.1.7的是从Oracle直接下载早期版本的Java(Java 7更新11),如海报&#39; Luds&#39;提到

步骤如下:

  1. 从计算机上卸载当前的Java。
  2. 从以下网址下载jre-7u11-windows-x64.exe(Java 7更新11)(〜= 30MB): http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html#jre-7u11-oth-JPR
  3. 将您需要的安装程序的风格复制到桌面。
  4. 关闭所有打开的Safari窗口, 包括下载窗口。
  5. 安装Java SE Runtime Environment 7u11(Java 7更新11)。