我做了以下步骤:
javaws <url of jnlp file>
)6.43
中有版本-Xss4m
和java-vm-args
。6.44
,将java-vm-args
更改为-Xss5m
,然后再次运行javaws
。wireshark
,我发现确实下载了jnlp文件。但是当应用程序启动时,-Xss
设置仍显示4mb。任何数量的重试都无法解决问题 - 只有完全清除缓存才能强制JavaWS接受新版本。我正在使用JDK 1.7.0_45,在XUbuntu 12.04,64bit上。
这是完整的jnlp文件:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="7.0+" codebase="http://192.168.0.47/parrot/" href="http://192.168.0.47/parrot//jnlp.php" version="6.44">
<information>
<title>Parrot</title>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.7+" href="http://java.sun.com/products/autodl/j2se"
java-vm-args="-Xss5m" />
<jar href="http://192.168.0.47/parrot//Parrot.jar" main="true" />
<jar href="http://192.168.0.47/parrot//Splash.jar" download="progress" />
<property name="jnlp.packEnabled" value="true" />
</resources>
<application-desc name="Parrot"
main-class="launch.Jnlp"
progress-class="parrot.splash.Splash" />
<update check="always" policy="always" />
</jnlp>
如您所见,update
已设为always
。
虽然我(作为开发人员)清除缓存没有问题,但我的应用程序的用户肯定并不总是那么聪明,因此他们注定要用错误的jvm args启动应用程序。有办法解决这个问题吗?