JavaFX: IllegalStateException: требуется местоположение - PullRequest
0 голосов
/ 04 октября 2019

Я пытаюсь загрузить FXML для своего приложения так же, как и в другом проекте. Разница: не работает. Я получаю «IllegalStateException: требуется местоположение»

Я пытался переместить файл в другое место, но это тоже не сработало. Я проверил URL (tmp) с помощью отладчика. Указывает на правильный файл.

    URL tmp = getClass().getClassLoader().getResource("FXMLDocument.fxml");
    FXMLLoader baseLoader = new FXMLLoader(tmp);
    Parent root = baseLoader.load();
    Scene scene = new Scene(root);        
    stage.setScene(scene);
    stage.show();

Ответы [ 2 ]

0 голосов
/ 07 октября 2019

Код, который фактически вызывал проблемы, был не тот, о котором идет речь.

Как оказалось,

URL tmp = getClass().getResource("FXMLDrawerMain.fxml");

вернул null по любой причине. (Может ОС?)

Я заменил его на

URL tmp = getClass().getClassLoader().getResource("FXMLDrawerMain.fxml");

и теперь он просто отлично работает.

0 голосов
/ 04 октября 2019

Пожалуйста, замените:

URL tmp = getClass().getClassLoader().getResource("FXMLDocument.fxml");

на

URL tmp = getClass().getResource("FXMLDocument.fxml");
...