我有一个关于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,则启动器会提示下载最新版本,并提供立即更新/推迟以供日后使用的选项。
所需行为
只要不显示此消息,在后台进行更新/以某种方式忽略它。
答案 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(或更低版本))。
我不知道如何解决你的第二个问题。