У меня возникли проблемы с включением изображений в мой проект JavaFX. Проект хранит ресурсы в папке src / main / resources и содержит документы F XML и все изображения. Документы F XML загружаются просто отлично, но все местоположения изображений отображаются нулевыми.
Мой код выглядит следующим образом ...
package VennDiagram;
import java.io.File;
import javax.imageio.ImageIO;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.stage.Stage;
public class View extends Application{
public static Stage primaryStage;
public static Scene promptWindow;
public static Scene refactor;
public static Scene scene;
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage stage) throws Exception{
System.out.println(getClass().getResource("/views/View.fxml"));
System.out.println(getClass().getResource("/views/openingPage.fxml"));
System.out.println(getClass().getClassLoader().getResource("/views/openingPage.css"));
primaryStage = stage;
System.out.println(getClass().getResourceAsStream("/views/newFileButton.png"));
Parent root = FXMLLoader.load(getClass().getResource("/views/View.fxml"));
Parent root2 = FXMLLoader.load(getClass().getResource("/views/openingPage.fxml"));
scene = new Scene(root);
promptWindow = new Scene(root2,1020,580);
primaryStage.setOnCloseRequest(event ->{
quitProgramAlert.display("Confirm Exit", "Are you sure you want to exit?");
if(!quitProgramAlert.closePressed) {
event.consume();
}
});
primaryStage.setMinHeight(600);
primaryStage.setMinWidth(750);
primaryStage.setTitle("VennDiagram Creator");
primaryStage.setScene(promptWindow);
primaryStage.setResizable(false);
primaryStage.show();
}
}
Это дает мне ошибку, говоря, что ресурс не может быть найден.
Дополнительные детали: Проект построен с использованием gradle. Я загружаю свои файлы F XML, используя тот же метод, что и для изображений. Он отлично работает с документами F XML.
РЕДАКТИРОВАТЬ: структура проекта показана ниже ...