【发布时间】:2014-03-24 03:37:10
【问题描述】:
之前我将我的属性文件放在我的类路径 src/ 中。现在我想把它放在一个名为config/ 的文件夹中。这样最终用户实际上可以自己修改文件。
但是现在我下面的代码不再起作用了
ResourceBundle.getBundle("Messages", Locale.getDefault());
我所说的代码不再起作用的意思是,在我部署应用程序并修改 Messages_en_US.properties 后,更改不会发生。
我怎样才能实现我想要的?我应该使用getBundle 吗?
编辑
我也将config 文件夹添加到类路径中,但我不确定这是否相关。这是一个普通的 Java 应用程序,我没有使用 Maven 或任何构建工具。
【问题讨论】:
-
您需要说明您是如何构建代码的以及这个
config目录的确切位置。一般来说,您的包将在类路径的根目录中查找,因此您可能需要指定config.Messages或类似名称。像 Maven 这样的构建系统的常用方法是将资源(如属性文件)放在单独的目录树中(如src/main/resources),它们最终位于类路径的根目录中。 -
您如何构建,更重要的是,您如何运行它。向我们展示各种文件的位置、执行 java 命令的位置以及正在执行的命令。
-
我已经更新了截图。
-
好的。所以你有一个 Eclipse 项目,并将 config 定义为源文件夹,对吗?当你执行上面的代码时会发生什么?您的默认语言环境是什么?
-
当我在
config中编辑属性文件时,不会发生更改。默认语言环境是en_US
标签: java resourcebundle