【问题标题】:java 7 update 45 webstart applications are not receiving propertiesjava 7 更新 45 webstart 应用程序未接收属性
【发布时间】:2013-10-26 04:54:53
【问题描述】:

我有一个使用 webstart 的应用程序,其中属性以 .但是自从我将我的 jre 升级到更新 45 后,它就不再工作了。更新 40 运行良好。我在修订历史中没有看到任何可能破坏这一点的内容。

当我搜索http://docs.oracle.com/javase/7/docs/technotes/guides/javaws/developersguide/syntax.html 时,我可以看到我可能必须以“javaws”开头的属性名称。或“jnlp”。我有大量的属性(〜50)。这是我可以使它工作的唯一方法吗? (如果是的话,修订历史没有提到这一点有点奇怪)。这是在 javaws 中处理属性的方式吗?

【问题讨论】:

标签: java-web-start jnlp


【解决方案1】:

按照here 的建议,您必须在属性前加上 jnlpjavaws,或者您需要签署 jnlp(将名为 APPLICATION.JNLP 的 jnlp 的精确副本放在 JNLP-INF 目录中在签署 jar 之前,包含主类的 jar)

【讨论】:

    【解决方案2】:

    在将我们的应用程序从 java 1.6 升级到 1.8 时遇到同样的问题 解决办法是:

    1. 将 jnlp 作为前缀添加到 jnlp 模板中传递的属性名称

      property name="dev.env" value="DEV" 更改为 property name="jnlp.dev.env" value="DEV"

    2. 在jnlp模板中传入的Main类的main方法中获取系统属性。
    3. 如果代码中的原始属性参数是 dev.env,那么只需获取 Jnlp 属性并将其设置为较旧的属性

    String devProps= System.getProperty("jnlp.dev.env"); System.setProperty("dev.env",devProps);

    【讨论】:

      猜你喜欢
      • 2013-10-24
      • 1970-01-01
      • 2012-07-22
      • 2015-05-18
      • 2013-11-09
      • 2015-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多