2009-06-08 69 views
4

有没有办法修改作为资源存储在Jar文件中的属性文件中的属性值?写入作为资源包含在Jar文件中的Java属性文件

这是我试图处理的场景。我有一个属性文件作为资源存储在我的Jar文件中。有一些系统特定的属性,例如路径。我希望能够改变这个我想让Jar文件运行的系统。

最好的解决方案是调用Jar文件内部的类/方法,它将修改Jar中包含的资源文件。另一个解决方案是在Jar文件上运行一个实用程序,该程序将修改属性文件并重新打包所有内容。这将是我在Jar文件上运行的一次性设置过程。

回答

3

使用Preferences API存储修改:http://java.sun.com/j2se/1.5.0/docs/api/java/util/prefs/package-frame.html

编辑重新阅读的问题后:你在哪里,你要的JAR发出潜在的很多人,有它定制安装的情况吗?如果是的话,那么首选项就是要走的路。

如果您希望针对少量部署进行定制,那么最好在构建时进行定制。

+0

感谢您的回复。我的情况与您的第一种情况类似。我正在查看偏好设置。 – 2009-06-08 17:47:57

1

我想你可能会找到Apache Commons Configuration project的用法。

您可以将其设置为使用属性文件,并具有system and a user properties file的概念。然后,您可以将其部署到您的系统属性文件,并且这将被用户属性文件覆盖。编写一个属性将修改用户属性文件。

因此,您使用默认值部署系统属性文件,并在覆盖用户属性文件中维护更改。我过去一直使用这个功能来完成你正在做的事情,而且它工作得非常好。配置这个库有很多种方法,所以值得看一下例子和FAQ。

+0

感谢您的信息。我会在未来的项目中记住这一点。 – 2009-06-10 00:10:36

相关问题