Да, есть много вопросов, задающих то же самое ... но, похоже, ни одно из решений не работает. Я пишу проект JavaFX / Maven, но продолжаю получать эту ошибку при запуске основного метода. Ошибка:
Caused by: java.lang.IllegalStateException: Location is not set.
Это возвращает ноль, хотя я не уверен, почему.
Мой метод Main:
public class FXApp extends Application {
@Override
public void start(Stage stage) throws Exception {
FXMLLoader loader = new FXMLLoader(ControllerQuickMenu.class.getResource("/com/almasb/test/view/QuickMenu.fxml"));
AnchorPane page = (AnchorPane) loader.load();
Scene scene = new Scene(page);
stage.initStyle(StageStyle.UNDECORATED);
stage.setScene(scene);
page.setStyle("-fx-border-color: black; -fx-border-width: 3px 3px 3px 3px; ");
stage.show();
}
public static void main(String[] args) {
launch(args);
}
}
Строка проблемы:
FXMLLoader loader = new FXMLLoader(ControllerQuickMenu.class.getResource("QuickMenu.fxml"));
Это моя файловая иерархия:
Я пробовал бесчисленное множество вариантов ... но не могу понять это. Вот несколько, которые я попробовал. (Все они возвращают ноль):
System.out.println(ControllerQuickMenu.class.getResource("/com/almasb/test/view/QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("../com/almasb/test/view/QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("com/almasb/test/view/QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("../../com/almasb/test/view/QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("../view/QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("view/QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("../QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("QuickMenu.fxml"));
System.out.println(ControllerQuickMenu.class.getResource("/QuickMenu.fxml"));
Я даже пытался переименовать «bp», чтобы обозначить «app» и «view», в «app.view» и пробовал несколько вариантов таким образом ... Пожалуйста, помогите.