我对intellij很新,我已经加载了一个我希望编译的项目,一切似乎进展顺利,但是当我编译它时。我找不到捆绑包。
java.util.MissingResourceException: Can't find bundle for base name openfire_i18n, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1499)
在做了一些调查后,似乎我必须在类路径中包含资源,这是正确的吗?
我完成了项目设置,模块,依赖项,并添加了“Jars或目录”
有一个复选框,上面写着导出,我试过点击它并取消点击它: - )
我能看到的资源在
i8n \的ResourceBundle
我尝试添加i8n,它问我选择文件的类别,我把类
RUN - 但仍然是同样的错误..
所以我尝试添加i8n / ResourceBundle目录
RUN - 仍然是同样的错误。
我注意到在我的ResourceBundle目录下有
C:\开发\爪哇\ openfire_src_3_7_1 \ openfire_src \ SRC \ I18N \ openfire_i18n_en.properties
但是没有具体的en_US,但我认为它应该回归到EN ??
所以一切都很好。
任何人都可以提供帮助
我真的被困了
由于
修改
我也注意到在propeties和COMPILER下我有以下内容,那么它应该包含这些文件吗?
?*.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
DEBUG
下面是“ResourceBundle bundle = ResourceBundle.getBundle(resourceBaseName,locale);”行。这就是它出错的地方。
locale = en_US
和
resourceBaseName = openfire_i18n
Locale locale = JiveGlobals.getLocale();
ResourceBundle bundle = ResourceBundle.getBundle(resourceBaseName, locale);
return getLocalizedString(key, locale, null, bundle);
答案 0 :(得分:1)
您应该在“模块源”选项卡设置中将openfire_src\src\i18n
目录定义为源,以便.properties
个文件出现在输出根目录(以及默认包中)类路径)。
答案 1 :(得分:0)
作为CrazyCoder的附录:资源应该是源文件夹。它不能是测试源文件夹。
答案 2 :(得分:0)
我在安装openfire 3.9期间解决了同样的问题
您需要执行以下任务..
打开'运行配置' 点击' classpath'标签 然后进入高级'选择'添加文件夹' 然后选择' i18n'来自openfire / src /
按照相同的流程添加' jar'来自openfire / src / resources的文件夹 和' dist'来自openfire / build / lib的文件夹
答案 3 :(得分:0)
在较新版本的intelliJ中,您可以右键单击并选择“将目录标记为”>“资源根”。更详细地解释here。