我对 intellij 很陌生,我已经加载了一个我希望编译的项目,一切似乎都很顺利,但是当我编译它时。我得到了找不到捆绑包。
java.util.MissingResourceException: Can't find bundle for base name openfire_i18n, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1499)
经过一番调查,看来我必须在类路径中包含资源,这是正确的吗?
我已经完成了项目设置、模块、依赖项,并添加了一个“罐子或目录”
有一个显示导出的复选框,我尝试单击它并取消单击它:-)
我可以看到的资源在
i8n\ResourceBundle
我尝试添加 i8n,它要求我为所选文件提供一个类别,我放了类
运行 - 但仍然是同样的错误..
所以我尝试添加 i8n/ResourceBundle 目录
运行 - 仍然是同样的错误。
我注意到在我的 ResourceBundle 目录下有
C:\Dev\Java\openfire_src_3_7_1\openfire_src\src\i18n\openfire_i18n_en.properties
但没有具体的 en_US 但我认为它应该回退到 EN ??
所以我认为一切都很好。
谁能帮忙
我真的被困住了
谢谢
编辑
我还注意到在属性和编译器下我有以下内容,所以它应该只包含这些文件吗?
?*.properties;?*.xml;?*.gif;?*.png;?*.jpeg;?*.jpg;?*.html;?*.dtd;?*.tld;?*.ftl
更多信息
我刚刚添加了这个文件,所有其他文件都是相同的错误
C:\Dev\Java\openfire_src_3_7_1\openfire_src\src\i18n\openfire_i18n_en_US.properties
调试
下面是“ResourceBundle bundle = ResourceBundle.getBundle(resourceBaseName, locale);”这一行 这就是它出错的地方。
语言环境 = en_US
和
resourceBaseName = openfire_i18n
Locale locale = JiveGlobals.getLocale();
ResourceBundle bundle = ResourceBundle.getBundle(resourceBaseName, locale);
return getLocalizedString(key, locale, null, bundle);