2012-07-23 48 views
2

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

我想知道是否有方法在JNLP中指定此参数文件并使webstart从Web服务器上拉下属性文件。我花了很多时间体面的调查这个网上,我能想出是简单地指定文件名作为参数,像这样的唯一的事情:

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

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

回答

0

看起来像jnlp是一个XML文件,其中包含一个jar文件的列表将被放置在您的类路径。
如果您在其中一个jar中包含属性文件,那么您可以使用this.getClass()。getClassLoader()。getResourceAsStream(“mypropsname.properties”)来读取它。

是否所有用户都需要相同的属性文件?

相关问题