У меня есть приложение JavaFX с локализацией.Однако я не могу заставить его работать, так как FXML Loader не может найти пакет локализации
Caused by: java.util.MissingResourceException: Can't find bundle for base name bundles.lcars, locale en_US
at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:1564)
at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1387)
at java.util.ResourceBundle.getBundle(ResourceBundle.java:845)
at cz.muni.fi.pv168.view.GUI.start(GUI.java:24)
Структура :
Основной класс графического интерфейса:
public void start(Stage primaryStage) throws Exception {
Locale locale = Locale.getDefault();
FXMLLoader fxmlLoader = new FXMLLoader();
fxmlLoader.setResources(ResourceBundle.getBundle("bundles.lcars", locale));
Parent root = FXMLLoader.load(getClass().getResource("lcars.fxml"),ResourceBundle.getBundle("bundles" +
".lcars", locale));
Scene scene = new Scene(root, 1920 , 1080); // 19:10
// set scene to stage and other irrelevant stuff
}
Я также попытался переместить папку комплектов в корневой пакет, но безуспешно.Кроме того, я пытался ответить на все вопросы, на которые уже дан ответ, «не могу найти пакет для базового имени».
РЕДАКТИРОВАТЬ для @ Slaw Я изменил код на этот, но безуспешно
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource("lcars.fxml"));
fxmlLoader.setResources(ResourceBundle.getBundle("bundles.lcars", locale));
Parent root = fxmlLoader.load();
Спасибо за помощь.