Java Webstart 应用程序 - 从单独的文件加载属性

标签 java jnlp java-web-start

我目前正在将我们的项目设置为通过 java webstart 部署到用户,而不是用户从共享网络驱动器运行 .bat 文件的当前设置。当应用程序运行时,它会传递一个属性文件参数,其中包含数据库凭据等信息,允许在不同环境之间切换等。

我想知道是否有一种方法可以在 JNLP 文件中指定这一点,并让 webstart 从网络服务器中拉取属性文件。我花了相当多的时间在网上调查这个问题,我唯一能想到的就是简单地将文件名指定为参数,如下所示:

    <application-desc main-class="Main"> 
        <argument>example.properties</argument> 
    </application-desc>

然后包含一个单独的链接,让用户从服务器下载属性文件。这样做的问题是,如果 JNLP 文件和属性文件没有下载到同一目录(这似乎是 IE 中的默认行为),那么整个应用程序就会崩溃。有没有办法将我的属性文件与 JNLP 文件中的其他资源捆绑在一起,或者我是否以完全错误的方式处理此问题?任何帮助将不胜感激!

最佳答案

您可以在 .jnlp 文件本身中设置属性,而不必使用单独的属性文件。 http://www.coderanch.com/t/200871/JNLP-Web-Start/java/Properties-files-JNLP

其他解决方案是:

  • 将属性文件放入主 jar 或单独的 jar 中,并将其添加为资源。
  • 将属性文件的位置作为属性或主要参数,然后从程序本身下载。

关于Java Webstart 应用程序 - 从单独的文件加载属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11620087/

相关文章:

java - 如何仅将 IntelliJ IDEA 随机开放端口绑定(bind)到本地主机?

java - 在 Android 中使用 GSON 反序列化 JSON 字符串

java - 更新 JWS 部署的应用程序的数据文档

java - 启动文件 : <jnlp> 中缺少以下必填字段

java - Java Web Start 中可能存在的错误

当 url 中存在查询字符串时,java webstart 重新下载 jnlp

java - 我必须在 Webstart 应用程序中显式调用 System.exit() 吗?

java - 如何从文本文件的一行中删除两个字符之间的空格

Java技术冲突

java - 是否有 JNLP 卸载事件?