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

我想知道是否可以在JNLP文件中指定此方法,并让webstart从Web服务器上拉下属性文件。我花了大量时间在网上进行调查,我唯一能想到的就是简单地将文件名指定为这样的参数:

    <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中,并将其添加为资源。
将属性文件的位置作为属性或主要参数放置,然后从程序本身下载。

10-07 18:50
查看更多