2012-04-13 49 views
4

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

它甚至可以做到这一点,如果是这样,如何?

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

<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> 

感谢

回答

3

我敢肯定有办法让deployJava.installLatestJRE()的工作,但在我的测试中,它似乎什么都不做。

但作为一个可行的解决方案,我只是使用deployJava.versionCheck()函数检查所需版本,然后使用JavaScript将用户转发到“http://java.com/zh_CN/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> 
+0

这是要覆盖刷新一次小程序页面没有安装Java的当电流deployJava.js行为的好方法第二次同时花2-3分钟下载并安装当前的JRE。 – ChrisWhoCodes 2013-01-15 14:38:08

+0

如何运行一个Java程序(但不是小程序),它将在安装/更新所需的JRE之后启动桌面图标。 – NawazSE 2015-02-17 07:05:11

0

我测试了它在略有不同的上下文(应用程序而不是applet),这对我有效。 所以你可以尝试使用“”,而不是“”,只是通过1.6和看看会发生什么

deployJava.createWebStartLaunchButton('http://localhost:8080/file.jnlp', 1.7)