我將項目導出到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