自定义Java Web Start

时间:2014-01-12 19:13:58

标签: java java-web-start jnlp

我有一个关于JNLP / Java Web Start的问题。我完全不了解JNLP。

A(Swing)应用程序使用JDK 1.7(源和目标)编译,并由客户端通过Web Start启动。

这是JNLP文件,省略了不重要的信息:

<jnlp spec="1.0+" codebase="http://someurl" href="http://someurl/launcher.jnlp">
<information>
    <title>...</title>
    <vendor>...</vendor>
    <homepage href="www.mycom.com" />
    <description>...</description>
</information>

<security>
    <all-permissions />
</security>

<update check="always" policy="always"/>

<resources>
    <java version="1.5+" initial-heap-size="128M" max-heap-size="256M"/>
    <jar href="lib/main.jar" main="true"/>              
    <jar href="lib/other.jar"/>
</resources>

<application-desc main-class="com.pkg.Launcher"/>
</jnlp>

问题一:

每当客户端安装了JRE 1.6(或者至少设置了JAVA_HOME或PATH)时,Web Start根本不会启动。

所需行为

下载Java 7 JRE

问题二:

如果客户端计算机上安装了V 7,则启动器会提示下载最新版本,并提供立即更新/推迟以供日后使用的选项。

所需行为

只要不显示此消息,在后台进行更新/以某种方式忽略它。

1 个答案:

答案 0 :(得分:2)

关于你的第一个问题,如果你想要Java 1.7+,那么就在你的资源中说出来。替换:

<java version="1.5+" initial-heap-size="128M" max-heap-size="256M"/>

使用:

<java version="1.7+" href="http://java.sun.com/products/autodl/j2se" initial-heap-size="128M" max-heap-size="256M"/>

href部分将要求客户端下载Java 7(如果它仍在Java 6(或更低版本))。

我不知道如何解决你的第二个问题。