Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaFX示例问题_Java_Intellij Idea_Javafx - Fatal编程技术网

JavaFX示例问题

JavaFX示例问题,java,intellij-idea,javafx,Java,Intellij Idea,Javafx,我正在尝试将JavaFX添加到我的Java项目中,经过一番努力,我已经达到了以下堆栈跟踪: 应用程序启动方法中出现异常 java.lang.reflect.InvocationTargetException 位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMet

我正在尝试将JavaFX添加到我的Java项目中,经过一番努力,我已经达到了以下堆栈跟踪:

应用程序启动方法中出现异常 java.lang.reflect.InvocationTargetException 位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 位于java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于java.base/java.lang.reflect.Method.invoke(Method.java:566) 位于javafx.graphics/com.sun.javafx.application.LaunchImpl.launchApplicationWithArgs(LaunchImpl.java:464) 位于javafx.graphics/com.sun.javafx.application.LaunchImpl.launchApplication(LaunchImpl.java:363) 位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(本机方法) 位于java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 位于java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 位于java.base/java.lang.reflect.Method.invoke(Method.java:566) 位于java.base/sun.launcher.launchelper$FXHelper.main(launchelper.java:1051) 原因:java.lang.RuntimeException:应用程序启动方法中的异常 位于javafx.graphics/com.sun.javafx.application.LaunchImpl.launchApplication1(LaunchImpl.java:900) 在javafx.graphics/com.sun.javafx.application.LaunchImpl.lambda$launchApplication$2(LaunchImpl.java:195) 位于java.base/java.lang.Thread.run(Thread.java:834) 原因:java.lang.NoSuchMethodError:sun.reflect.misc.Reflectil.newInstance(Ljava/lang/Class;)Ljava/lang/Object; 在javafx.fxml.fxmloader$ValueElement.processAttribute(fxmloader.java:927)中 在javafx.fxml.fxmloader$InstanceDecrationElement.processAttribute中(FXMLLoader.java:971) 在javafx.fxml.fxmloader$Element.processStartElement(fxmloader.java:220) 在javafx.fxml.fxmloader$ValueElement.processStartElement(fxmloader.java:744) 在javafx.fxml.fxmloader.processStartElement(fxmloader.java:2707) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:2527) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:2441) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:3214) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:3175) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:3148) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:3124) 在javafx.fxml.fxmloader.loadImpl(fxmloader.java:3104) 在javafx.fxml.fxmloader.load(fxmloader.java:3097) 在sample.Main.start处(Main.java:16) 在javafx.graphics/com.sun.javafx.application.launchempl.lambda$launchApplication1$9(launchempl.java:846) 在javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455) 在javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428) 位于java.base/java.security.AccessController.doPrivileged(本机方法) 位于javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427) 位于javafx.graphics/com.sun.glass.ui.invokelateDispatcher$Future.run(invokelateDispatcher.java:96) 在javafx.graphics/com.sun.glass.ui.gtk.GtkApplication.\u runLoop(本机方法) 在javafx.graphics/com.sun.glass.ui.gtk.GtkApplication.lambda$runLoop$11(GtkApplication.java:277) ... 1更多运行应用程序示例的异常。Main 这是我的
Main
课程:

package sample;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;


public class Main extends Application {

    @Override
    public void start(Stage primaryStage) throws Exception{
        Parent root = FXMLLoader.load(getClass().getResource("sample.fxml"));
        primaryStage.setTitle("Hello World");
        primaryStage.setScene(new Scene(root, 300, 275));
        primaryStage.show();
    }


    public static void main(String[] args) {
        launch(args);
    }
}
这是我的控制器:

package sample;

public class Controller {
    public Controller() {

    }
}
这是我的
sample.fxml
文件。它们都位于
样品
包装内:



这些将是在Intellij中创建JavaFX应用程序时获得的默认文件。关于堆栈跟踪的含义有什么想法吗?到目前为止,我找不到任何有用的东西,因为某种原因,已经用了2.5个小时了,JavaFX似乎是9+版,但
FXMLLoader
似乎是9+版。您能提供一些指导,说明我应该如何验证/更改它吗?非常感谢你