如果属性文件中的值可能会发生变化怎么办?

What if values in properties files are subject to change?

我读到不应修改 jar 文件中的文件,我认为这解释了为什么获得 outputStream 不像获得 inputStream 调用 [=12] 那样简单=] 读取文件。使用属性文件时,将在执行期间检索值,但如果这些值可能发生变化怎么办?重新编译程序会很乏味。

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

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

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