Как правильно задать локацию для FXMLLoader, если fxml файл находится в другом пакете? - Java

Узнай цену своей работы

Формулировка задачи:

Добрый день! Так как проект складывается более, чем из 3-х файлов поместил fxml файлы в отдельную папку. При запуске FXML Loadera использовал следующий код:
FXMLLoader mainLoader = new FXMLLoader();
mainLoader.setLocation(getClass().getResource("../fxml/sample.fxml"));
вместо кода, который Idea создает автоматически, т.к. в teampleat'е fxml файл находиться в одном пакете с FXMLLoader'ом.
FXMLLoader.load(getClass().getResource("sample.fxml"));
в Intellij Idea работает корректно, при создании jar-архива и запуске приложения выдает ошибку:
IllegalStateException: Location is not set.
Как преодолеть эту ошибку? Или Как правильно задать URL fxml файла, находящегося в другом пекедже?

Решение задачи: «Как правильно задать локацию для FXMLLoader, если fxml файл находится в другом пакете?»

textual
Листинг программы
FXMLLoader.load(getClass().getResource("/com/company/program/fxml/sample.fxml"));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5
Похожие ответы