所以我有一个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中并不重要,但我希望能够在此时找到它。我在俯瞰什么?
答案 0 :(得分:1)
如果你将你的属性放在src文件夹中(我认为你应该这样做),你需要给ResourceBundle
一个类似于类的限定名,这样当编译应用程序时,它可以找到属性文件。 classes文件夹。
在我的情况下,例如,我将它们放在我的源文件夹中,在包内。像这样:
的src /包/子包/ subsubpackage / propertiesFile.properties
当我想加载属性时,我将其用作限定名称:
package.subpackage.subsubpackage.propertiesFile
这与您为应用程序提供类的完全限定名称的方式相同。这里的关键是属性文件被复制到WAR内的classes文件夹中。所以你的错误告诉ResourceBundle
查看src文件夹。