【问题标题】:Webstart runs with wrong version of JREWebstart 使用错误版本的 JRE 运行
【发布时间】:2012-04-05 20:25:51
【问题描述】:

我有一个需要 Java 7+ 的 Java webstart 应用程序,所以 JNLP 有这行:

<j2se version="1.7+" href="http://java.sun.com/products/autodl/j2se"/>

这适用于各种 Windows XP 和 Windows 7 机器(其中大多数还安装了 Java 6),但在其中一台机器上,webstart 使用 Java 6 启动并且失败(JRE 版本错误)。我找到了this post 并检查了 Java 设置,它们看起来不错:

我也试过把 JNLP 线改成这个,但还是不行:

<j2se version="1.7+"/>

关于如何让 webstart 知道 JRE 1.7 存在的任何想法?

配置:Windows 7,以管理员身份运行 - 从 IE 启动的 webstart 应用程序。

【问题讨论】:

  • 我对此不太了解,但是您确定这与某处的 IE 设置无关吗?我知道 IE 会让人头疼。
  • @PerryMonschau 我不知道 - 我检查了 Internet 选项,但找不到任何似乎相关的内容。这不是安全问题,因为应用程序启动(但 JRE 错误)...
  • 好的,尝试按照第一个或第二个答案中的步骤操作:stackoverflow.com/questions/71254/… 除了将他的 1.5 替换为 1.7
  • 确保首先使用JaNeLA 验证JNLP。许多 JNLP 文件严重损坏,无法预测 JWS 客户端将如何解释它们。然后如果仍然失败,请在未选择 1.6 的情况下尝试(这应该不是必需的,但我很好奇它是否会起作用)。然后检查错误数据库,如果没有发现类似的情况,请启动一个新数据库并查看 Oracle 对此事的看法。
  • @AndrewThompson 实际上,即使未选中 1.6,它仍然以 1.6 运行...奇怪...

标签: java java-web-start


【解决方案1】:

尽管我的 JAVA_HOME、PATH 和 Java 控制面板设置都设置为 7,但使用 Java 6 而不是 Java 7(我都安装了)时,我遇到了类似的问题。Java 7 将在以下情况下使用从网页启动,但从桌面快捷方式启动,正在使用 Java 6,因此无法启动应用程序,因为它需要 7。

原来在 C:\Windows\SysWOW64 中存在 java、javaw 和 javaws 可执行文件,这就是生成的快捷方式指向的内容。所以我用 C:\Program Files\Java\jre7\bin 中的那些 EXE 覆盖了这些 EXE。

也许重新安装 JRE 7 也可以解决此问题,但我只是进行了此快速修复。

【讨论】:

  • +1 以获得良好的结果。我已经尝试了此页面上的两种解决方案,但我的一位用户仍在努力解决 Windows 10 上的问题。
【解决方案2】:

我发现了问题。我安装了 Java 6 32 位和 64 位,但 Java 7 只安装了 64 位版本。 我正在从 Internet Explorer 32 位启动 webstart 链接,我想它不能使用 64 位版本的 JRE。

从 IE 64 位启动 webstart 工作正常。

感谢您的 cmets,我在执行您推荐的操作之一时发现了问题。

【讨论】:

  • 感谢您发布解决方案。
  • +1 我被这个问题撞到了墙上,这个答案是绝对正确的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-08
  • 2011-05-10
  • 1970-01-01
  • 2021-06-05
  • 1970-01-01
相关资源
最近更新 更多