我将项目导出到jar时出现问题。当我在Eclipse中运行项目时,ResourceBundles工作正常,但不能从jar中运行。我将它导出为Export - > jar文件。在jar中找不到ResourceBundle
我在(Windows)cmd - > java -jar%projectName%.jar中启动jar。在把ResourceBundle是:
- 的Eclipse:%项目名称% - > SRC - >语言
- 在罐子里:文件夹的语言。
我加载这样说:
ResourceBundle.getBundle("language.Language", currentLocale)
我看着#2这个很多其他的问题和他们的问题总是,他们并没有提供从根目录的路径。我不知道为什么这不起作用。我也尝试将这些.properties文件放在根目录中...
注意:管理这些软件包/语言环境的类也位于相同的软件包中。
在此先感谢。
编辑:也许一些额外的信息,我得到的字符串是这样的:
public static String getString(String key) {
try {
return ResourceBundle.getBundle("language.Language", currentLocale)
.getString(key);
} catch (MissingResourceException e) {
return "KEY " + key + " NOT FOUND !";
}
}
堆栈跟踪:
Exception in thread "main" java.util.MissingResourceException: Can't find bundle
for base name language.Language, locale nl_be
at java.util.ResourceBundle.throwMissingResourceException(Unknown Source)
at java.util.ResourceBundle.getBundleImpl(Unknown Source)
at java.util.ResourceBundle.getBundle(Unknown Source)
at language.LanguageModel.getString(LanguageModel.java:33)
at cli.class.method(class.java:35)
at main.Main.main(Main.java:26)
性能:
Language_en_US.properties
Language_fr_FR.properties
Language_nl_BE.properties
....
打印异常的堆栈跟踪,并将其粘贴哟你的问题。并粘贴'jar -tf yourjar.jar'的结果 – 2013-03-15 22:06:40
跟踪添加,您的命令给出:无法识别的选项:-tf 错误:无法创建Java虚拟机。 错误:发生了致命异常。程序将会退出。 – Aaron 2013-03-15 22:15:54
该命令是'jar -tf jarFile.jar',而不是'java -jar -tf jarFile.jar'。但是堆栈跟踪足以识别问题。看到我的答案。 – 2013-03-15 22:33:42