Java 如果属性文件中的值可能发生更改怎么办?

Java 如果属性文件中的值可能发生更改怎么办?,java,file,jar,io,properties-file,Java,File,Jar,Io,Properties File,我已经读到jar文件中的文件不应该被修改,我认为这解释了为什么获取outputStream不如获取inputStream调用getClass().getResourceAsStream()来读取文件那么简单。使用属性文件时,将在执行期间检索值,但如果这些值可能会更改,该怎么办?重新编译程序会很乏味 在我的例子中,这些值是IP地址、用户名和外部文件的路径。所以我想我不能移动外部文件,即使是偶然的,因为我在jar中的属性文件与该文件有不同的路径。这是应该采用的方式还是有一种我不知道的更灵活的方式?通

我已经读到jar文件中的文件不应该被修改,我认为这解释了为什么获取
outputStream
不如获取
inputStream
调用
getClass().getResourceAsStream()
来读取文件那么简单。使用属性文件时,将在执行期间检索值,但如果这些值可能会更改,该怎么办?重新编译程序会很乏味


在我的例子中,这些值是IP地址、用户名和外部文件的路径。所以我想我不能移动外部文件,即使是偶然的,因为我在jar中的属性文件与该文件有不同的路径。这是应该采用的方式还是有一种我不知道的更灵活的方式?

通常属性文件位于jar之外生产系统类路径的某个位置。通常通过设置脚本/手动偶尔更改一次值,然后只需要重新启动应用程序,而不需要重新编译


所以,总而言之,我建议不要在jar中包含属性文件。

通常属性文件位于jar之外生产系统类路径的某个位置。通常通过设置脚本/手动偶尔更改一次值,然后只需要重新启动应用程序,而不需要重新编译

所以,总而言之,我建议不要在jar中包含属性文件