我有一个桌面应用程序,我想使用JAVA Web start启动该应用程序。我第一次使用浏览器启动时工作正常,它将下载资源中定义的所有jar。下次我使用JNLP或浏览器运行它时,它不会下载任何jar。使用的罐子来自缓存或其他地方,我不知道......
我希望每次启动我的应用程序时都会下载资源中定义的所有jar
我的jnlp文件包含:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="" href="">
<information>
<title>example</title>
<vendor>example</vendor>
</information>
<resources>
<!-- Application Resources -->
<j2se version="1.5+"
href="http://java.sun.com/products/autodl/j2se"/>
<jar href="application.jar" main="true" />
<jar href="lib/app.jar" />
</resources>
<application-desc main-class="com.application.entry">
</application-desc>
<update check="background"/>
<security>
<all-permissions/>
</security>
</jnlp>
答案 0 :(得分:5)
如果有新版本,它将下载jar。如果没有,则根本不需要下载文件。
答案 1 :(得分:1)
尽管Andrew Thompson指出的行为是您可以预期的,但您可以像这样更改更新策略:
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="" href="">
<information>
<title>example</title>
<vendor>example</vendor>
</information>
<resources>
<!-- Application Resources -->
<j2se version="1.5+"
href="http://java.sun.com/products/autodl/j2se"/>
<jar href="application.jar" main="true" />
<jar href="lib/app.jar" />
</resources>
<application-desc main-class="com.application.entry">
</application-desc>
<update check="always" policy="always"/>
<security>
<all-permissions/>
</security>
</jnlp>
答案 2 :(得分:1)
我们可以设置三种不同的检查配置:
update check="timeout" policy="always"
update check="always" policy="always
&#34; update check="background " policy="always"
`
答案 3 :(得分:0)
是的,这是解决问题的重点。
解决方案很简单,您可以进行以下更改:
update check="always" policy="always
它不能进入任何集合