3

我正在使用 java web start 作为我的应用程序的标准部署技术。我想知道允许离线和更新标签有什么区别。

offline-allowed表示当客户端系统与网络断开时,应用程序可以运行

<update check="background" policy="prompt-update">:- 意味着在后台检查更新时启动应用程序,并询问用户是否要下载更新版本或启动缓存版本。

我对允许离线感到困惑,这是否意味着允许离线检查用户计算机是否连接到部署应用程序以进行更新的服务器,或者它只是检查正常的互联网连接。

如果有人both在他们的 jnlp 文件中使用 tag 会有什么影响。

总的来说,我希望我的应用程序在后台检查更新[使用桌面快捷方式而不是浏览器链接,我不想每次都使用浏览器访问应用程序]并在更新可用时询问,但它也应该允许启动应用程序无论托管 jnlp 文件的服务器是否可用。

仅供参考:我的应用程序需要连接到 Internet 以进行其他操作,但我不能保证托管 jnlp 和其他应用程序 jar 文件的服务器的可用性。

如果您有任何建议或问题,请告诉我。

谢谢

4

1 回答 1

2

当您第一次启动 JNLP 文件时,它会将应用程序(在 JNLP xml 文件中定义)安装到 JVM(控制面板 -> Java -> 常规 -> 视图)。

update check="background"配置允许您将版本与服务器同步并在服务器有新版本时安装新版本。如果您没有与服务器的连接 - 什么都不会发生。

如果有人both在他们的 jnlp 文件中使用 tag 会有什么影响。

第二个会受到影响。

这是 JNLP 示例:

<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="http://172.20.0.69:8080/DemoMonitoring/web/" href="monitoring_webstart.jnlp">
<information>
    <title>Demo monitor 172.20.0.69</title>
    <vendor>Demo</vendor>
    <homepage href="http://www.Demo.com"/>
    <description>Demo Monitoring System</description>
    <description kind="short">Demo Monitoring System User Interface.</description>
    <icon href="./images/ne_app_icon_64.png"/>
    <icon kind="splash" href="./images/splash.jpg"/>
    <icon kind="shortcut" href="./images/ne_app_icon_32.png"/>


    <offline-allowed/>
    <shortcut online="false">
        <desktop/>
        <menu submenu="Prabinas">
            <menu submenu="Product Managing System"/>
        </menu>
    </shortcut>

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

<resources>
    <!-- Application Resources -->
    <j2se version="1.6+"
          href="http://java.sun.com/products/autodl/j2se"/>
    <jar href="DemoMonitoringPrototype.jar"  main="true" />
    <jar href="lib/log4j-1.2.8.jar" download="eager" />
    <jar href="lib/commons-logging-1.1.1.jar"/>
    <jar href="lib/gson-1.7.1.jar"/>
    <jar href="lib/xpp3_min-1.1.4c.jar"/>
    <jar href="lib/xstream-1.3.1.jar"/>
    <jar href="lib/httpclient-4.1.1.jar"/>
    <jar href="lib/httpcore-4.1.1.jar"/>
    <jar href="lib/DemoMonitorCommon.jar"/>

</resources>
<application-desc name="Prototype" main-class="com.demo.monitor.root.MainRun" width="500" height="500">           
  </application-desc>
 <update check="background" policy="prompt-update"/> 
</jnlp> 
于 2012-11-15T21:04:54.093 回答