4

我想使用 deployJava.js 工具让 Java 自动检测当前安装的 JRE 并在必要时安装更新版本。在阅读 deployJava.js 时,我最初的印象是,当您简单地将版本号设置为“runApplet”函数的函数参数时,它会立即执行此操作。但这似乎从未奏效。

甚至有可能做到这一点,如果可以,怎么做?

这是我当前启动小程序的代码:

<script type="text/javascript" src="https://www.java.com/js/deployJava.js"></script>
<script type="text/javascript">
    var attributes = {id:"applet", name:"TheApplet", code:"TheApplet"}; 
    var parameters = {jnlp_href: "http://localhost/TheApplet.jnlp"};
    deployJava.runApplet(attributes, parameters, "1.6.0_31");
</script>

谢谢

4

2 回答 2

3

我确信有一些方法可以让 deployJava.installLatestJRE() 工作,但在我的测试中它似乎完全没有做任何事情。

但作为一个可行的解决方案,我只是使用 deployJava.versionCheck() 函数来检查所需的版本,然后使用 JavaScript 将用户转发到他们可以的“http://java.com/en/download/testjava.jsp”然后下载最新版本(如有必要)。

<script type="text/javascript" src="https://www.java.com/js/deployJava.js"></script>
<script type="text/javascript">
    if (deployJava.versionCheck("1.6.0_31+") == false) {                   
        userInput = confirm(
                "You need the latest Java(TM) Runtime Environment. " +
                "Would you like to update now?");        
        if (userInput == true) {  
            window.location = "http://java.com/en/download/testjava.jsp";
        }
    }
    else
    {
        var attributes = {id:"applet", name:"TheApplet", code:"TheApplet"}; 
        var parameters = {jnlp_href: "http://localhost/TheApplet.jnlp"};
        deployJava.runApplet(attributes, parameters, "1.6.0_31");
    }
</script>
于 2012-04-14T15:02:01.443 回答
0

我在稍有不同的上下文(应用程序而不是小程序)中对其进行了测试,这对我有用。所以你可以尝试使用 '' 而不是 "" 并通过 1.6 看看会发生什么

deployJava.createWebStartLaunchButton('http://localhost:8080/file.jnlp', 1.7)
于 2012-09-13T22:39:34.220 回答