0

所以我有一个 GWT 项目,在服务器端我试图将属性文件加载到资源包中,但是失败了。我不断收到缺少资源的异常,因为它找不到文件,但我尝试过的每个选项都不起作用。我已经尝试将config.properties文件放入war/config/config.properties以及src/config/config.properties(所以 2 个副本)并且我尝试通过以下方式调用它

TestGWTProject.war.config.config.properties
TestGWTProject.war.config.config
TestGWTProject.src.config.config.properties
TestGWTProject.war.config.config
src.config.config.properties
src.config.config

我现在的电话是这个

ResourceBundle bundle = ResourceBundle.getBundle("config");

但没有任何效果。理想情况下,我想将它保存在 war 文件中,但如果它必须留在 src 中没什么大不了的,但我希望此时能够找到它。我在俯瞰什么?

4

1 回答 1

1

如果你把你的属性放在 src 文件夹中(我认为你应该这样做),你需要给出ResourceBundle一个类的限定名,这样当应用程序被编译时,它可以在类文件夹中找到属性文件。

就我而言,例如,我将它们放在包内的源文件夹中。像这样:

src/package/subpackage/subsubpackage/propertiesFile.properties

当我想加载属性时,我使用它作为限定名称:

package.subpackage.subsubpackage.properties 文件

这与您为应用程序提供类的完整限定名的方式相同。这里的关键是属性文件被复制到 WAR 内的类文件夹中。所以你的错误是告诉ResourceBundle查看 src 文件夹。

于 2013-10-15T10:02:33.487 回答