如何使用javascript在IE10中安装JRE/Java版本

How to get installed JRE/Java version in IE10 using javascript

本文关键字:JRE Java 版本 安装 何使用 javascript IE10      更新时间:2023-09-26

我想在IE10中运行小程序,它需要java 1.7.0_51的最低版本。

因此,在加载applet之前,我想检查当前安装的jre版本,如果当前的jre不合适,则显示一条正确的消息。

为此,我们使用deployJava.js(https://www.java.com/js/deployJava.txt)。

在本文中,我们调用getJREs函数来获取所有可用的jres。但它返回了一个空列表。

调试后,我们在testUsingActiveX函数中发现,尽管安装了版本1.7.0,但它无法创建ActiveXObject。它抛出异常并返回false。

有什么办法或更好的方法来解决这个问题吗。

使用navigator.plugins。我相信每一个主流浏览器都支持它,即使是旧版本。我已经用最新版本的Chrome、Firefox、Safari和IE进行了测试。

下面是一个返回Java部署工具包版本的函数:

function getJavaVersion() {
    // note the extra space, it's used to make split easier
    var jdtString = 'Java Deployment Toolkit ';
    var jdtIndex = -1;
    // find index of JDT inside navigator.plugins
    for (var i = 0; i < navigator.plugins.length; i++)
        if (navigator.plugins[i].name.indexOf(jdtString) >= 0)
            jdtIndex = i;
    if (jdtIndex === -1)
        return null; // Java Deployment Toolkit was not found
    return navigator.plugins[jdtIndex].name.split(jdtString)[1];
}

这将返回Java版本号,例如8.0.50.13,如果未找到JDT,则返回null。使用这个数字,您可以解析出特定的版本号,并将其与所需的版本进行比较。