2017-01-10 4 views
1

Я пытаюсь добавить возможность изменить язык в программе, проблема заключается в том, что я не могу найти правильный путь для использования и все время я получилResource Bundle MissingResourceException

Java. util.MissingResourceException: не удается найти пакет для базовых nameMenuFactory_pl.properties, локали пл

  Locale locale =new Locale("pl"); 
      ResourceBundle myResources = ResourceBundle.getBundle("MenuFactory_pl.properties",locale); 

Я попытался добавить путь к пакету, и скопировать пакет ресурсов для созданного Pacakge Java/ресурс и все-таки я получить сообщение об ошибке.

PIC WITH MORE INFO

+0

В будущем, пожалуйста, избегайте скриншотов вашего кода, скорее вставьте фактический код, правильно отформатированный, чтобы членам сообщества было легче проверить код и помочь. Также включите полный журнал ошибок. – ishmaelMakitla

+0

Помог ли вам один из ответов?/решать проблему? –

ответ

0

Использование

ResourceBundle.getBundle("com.horstmann.violet.application.MenuFactory",locale) 

или

ResourceBundle.getBundle("com/horstmann/violet/application/MenuFactory",locale) 
0

Я думаю, что вы задаете сверток неверный путь. Не должно быть суффикса _pl, поскольку он должен автоматически добавляться из вашей локали. Точно так же не должно быть расширения .properties. это формат, которым необходимо следовать (из учебника, приведенной ниже):

ResourceBundle labels = ResourceBundle.getBundle("LabelsBundle", currentLocale); 

Смотреть подробнее на Java: https://docs.oracle.com/javase/tutorial/i18n/resbundle/propfile.html

Так, чтобы изменить язык Вы должны изменить локаль, а именно:

Locale locale = new Locale("pl"); 
myResources = ResourceBundle.getBundle("MenuFactory",locale); 

Больше на местности и i18n здесь: https://docs.oracle.com/javase/tutorial/i18n/locale/create.html

Pozd rowienia