查看小程序时,为什么Safari for Windows会显示;Java不可用或未安装";Java何时安装并可用?

查看小程序时,为什么Safari for Windows会显示;Java不可用或未安装";Java何时安装并可用?,windows,safari,applet,java,Windows,Safari,Applet,Java,在Windows 7上使用Safari加载包含任何Java小程序的任何页面时,会出现以下警报: “Java不可用或未安装。是否转到可以下载Java的页面?” 此消息不正确。这些是安装了一个或多个JavaJRE/JDK实例的开发人员机器,包括1.7.x。许多警报伴随着引用不存在的文件路径的消息,类似于: 无法从加载Java运行时环境 “ 以下修复情况的尝试都失败了: 卸载和重新安装各种Java版本 正在更新到最新的Java版本 在Safari中更改安全设置 去检测一个甚至没有安装的钝版本(Jav

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

“Java不可用或未安装。是否转到可以下载Java的页面?”

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

无法从加载Java运行时环境 “

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

  • 卸载和重新安装各种Java版本
  • 正在更新到最新的Java版本
  • 在Safari中更改安全设置
  • 去检测一个甚至没有安装的钝版本(Java 2运行时环境,SE v1.4.2_19?!)
搜索互联网发现许多用户有类似的问题,但没有答案


如何解决这一问题?

尽管网上存在许多关于这一问题的投诉,但谷歌搜索“Safari Windows jvm.dll JAVAFX”后发现

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

修复问题的步骤:
  • 关闭所有Safari窗口
  • 运行
    regedit.exe
  • 备份Windows注册表(右键单击根
    计算机
    ,然后选择
    导出
    • 32位Windows:
      HKEY\U LOCAL\U MACHINE\SOFTWARE\JavaSoft\Java插件\
    • 64位Windows:
      HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java插件\
  • 检查每个条目;可能会有多个条目。
    • 有些条目引用正确的JRE,而有些条目可能引用JavaFX或其他内容
    • JavaFXOne可能是由Java7安装的
    • Safari可能正在选择排序最底部的条目;请检查该条目的文件路径引用是否无效或不存在
  • 选择
    。\Java插件\
    下的错误条目,交叉手指,然后将其删除
  • 关闭regedit
  • 重新打开Safari并浏览至。稍等片刻
  • 此时,您应该成功了。如果继续失败,请检查
    。\Java插件\
    或父子文件夹
    。\JavaSoft \
    下的其他注册表项,以查看无效的文件路径。如果您最近升级了,以前的安装可能已无效,但注册表项可能尚未删除,并且可能会丢失必须手动切除
  • 注意:关于第4步,您的数据可能位于不同的位置;请查看下面的评论,以了解以类似方式解决此问题的其他用户的体验。请在下面发布任何其他Windows注册表路径作为评论。

    感谢苹果支持社区的用户Olivier2011(Olivier Lefevre)(请参阅本答案中的第一个链接),他用自己的解决方案回答了自己的问题。

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

    要解决:

  • 卸载计算机中的所有JavaFX和JRE
  • 下载“java脱机安装”(~=20MB)
  • 将“java脱机安装”复制到桌面
  • 关闭所有Safari窗口,包括下载窗口
  • 安装java

  • 事实上,上面的答案、在:的解释和马库斯·波普的Windows7位置的组合对我很有用。
    即:
    我有windows 7。
    当尝试运行java小程序(geogebra)时,我收到错误消息Safari

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

    因为路径在我的机器上不存在。 这是:
    C:\program\Oracle\JavaFX Runtime 1.0\etc

    步骤:

  • 我关闭了Safari
  • 我打开注册表并转到:
    HKEY\u LOCAL\u MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java插件
  • 在那里我找到了两个文件夹(其他人找到了更多)。最高的一个是10.5.1,在那里我找到了路径C:\Program\Oracle\JavaFX Runtime 1.0\etc的引用
  • 我备份了我的注册表,然后删除了这个文件夹
  • 我重启了Safari,一切都很好

  • 你们可能想看看启动小程序的代码,因为它可以指定运行小程序的java版本。有一个代码可以指定为使用可用的最新版本。你们也可以选择卸载java并用早期版本重新安装它。但是,一些broswers会强迫你们使用最新版本,如旧版本存在一些安全风险

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

    • 支持多浏览器的小程序:
    • 小程序参数:

    在安装Java 7 update 15之后,我遇到了类似的Java问题

    我尝试了以上所有的故障排除方法,但都失败了(我没有HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java插件所引用的插件。)

    使用Safari 5.1.7的有效方法是直接从Oracle下载早期版本的Java(Java 7 update 11)(与我在Safari 5.1.7保质期内使用的版本相同,当时Safari 6仅用于Mac)

    这些步骤是:

  • 从计算机上卸载Java
  • 下载“java脱机安装”(java 7更新11)(~=30MB)
  • 将“java脱机安装”复制到桌面
  • 关闭所有Safari窗口,包括下载窗口
  • 安装Java

  • 我尝试了上述方法,而“Luds”的帖子起了作用

    我确实有一个由HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\JavaSoft\Java Plu键引用的插件