У меня есть проект JavaFX, который загружает файлы FXML с помощью getClassLoader (). GetResource, например:
Main.class.getClassLoader().getResource("fxml/App.fxml").
Основной код работает нормально, но когда я запускаю тесты с плагином Maven Surefire, у меня появляется эта ошибка:
java.lang.IllegalStateException: Location is not set.
javafx.fxml/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2459)
javafx.fxml/javafx.fxml.FXMLLoader.load(FXMLLoader.java:2435)
После дальнейшего изучения я обнаружил, что при вызове getClassLoader (). GetResource () при выполнении теста путь, который он пытается найти, находится в папке "target / test-classes", тогда как ресурсы находятся в "target / classes" папка. Как мне решить эту проблему?
Мой проект следует структуре по умолчанию Maven, если это уместно.
Редактировать: добавлена строка кода, выполняющая загрузку ресурса