【问题标题】:Netbeans platform custom configuration fileNetbeans 平台自定义配置文件
【发布时间】:2012-05-02 11:19:41
【问题描述】:

我正在尝试为数据库连接创建配置文件。属性文件最好。每次安装应用程序(客户数据库)后都必须更改此属性。

  • 我想要这个配置文件在应用程序的根目录(netbeans 平台 项目和发行文件夹)。我找不到如何参考 应用程序根文件夹。

  • 我还发现 FileUtil.getConfigFile/Root 缺少文档。我 不知道在哪里可以找到 configRoot(如果它甚至是物理的),或者 如何离线添加 ConfigFile(不是在代码中,而只是通过复制 配置文件)。

  • 可以容忍的解决方案是向系统添加数据库配置 属性,但我找不到在哪里指定其他系统属性 在 netbeans 配置文件中。

【问题讨论】:

  • 现在,我只是用放置在 src 文件夹中的 ResourceBundle 和propreties 文件解决了这个问题.. (stackoverflow.com/q/2070065/606571) 但这会将 props 文件放入已编译的 jar 中,并且不提供更改此文件的机会最终用户。

标签: java configuration-files netbeans-platform


【解决方案1】:

您可以将属性文件放在其中一个模块的 Release 文件夹中,然后使用 InstalledFileLocator API 访问它:http://bits.netbeans.org/dev/javadoc/org-openide-modules/org/openide/modules/InstalledFileLocator.html

【讨论】:

  • 感谢您的回复。我尝试使用 InstalledFileLocator。我将我的属性文件移动到包根目录中,然后调用了 locate()。我使用属性文件名作为第一个参数,包 bease(插件的主包)作为第二个参数和 false(没有本地化)。需要先安装插件吗?我需要在开发阶段在 Nebeans ide 中尝试一下。
  • 欲了解更多详情,请查看我的书中:wiki.netbeans.org/…
  • 有了你的书,我能够让我的代码工作。在 InstalledFileLocator 的 javadoc 中未指定,该文件应位于 release 文件夹中。在我们的公鸡手册中。我把我的属性文件放在那里,它工作! 谢谢!
  • 很高兴这本书很有用!随意看看本书的其余部分!
【解决方案2】:

要访问您的 NetBeans 应用程序的安装目录,您可以使用以下 sn-p

new File(System.getProperty ("netbeans.home")).getParentFile()

如果您将'/etc' 附加到生成的文件中,您将位于托管 app.conf 文件的同一文件夹中。

【讨论】:

  • 感谢您的回复。如何将一些文件添加到 /etc 目录中?在最终构建为 zip 文件之前,此目录不存在。我没有找到任何与将 app.conf 复制到 ant 的 build.xml 文件中的 /etc 文件相关的任何内容。
  • @UltraMaster 将文件作为资源包含在您的应用程序中,然后在第一次运行时将文件放在 /etc 目录中
【解决方案3】:

为什么不使用app.conf?它位于 ROOT/etc.

您可以使用系统属性,或者更优雅的是OptionProcessor

【讨论】:

  • 感谢您的回复,但我不希望用户无意中更改应用程序设置,因此我需要将数据库配置放入单独的文件中,应用程序根目录最好,但 /etc/ 也可以
猜你喜欢
  • 1970-01-01
  • 2018-06-14
  • 1970-01-01
  • 2013-04-30
  • 2020-08-28
  • 2012-01-11
  • 1970-01-01
  • 1970-01-01
  • 2022-09-05
相关资源
最近更新 更多