当前位置: 首页 > 知识库问答 >
问题:

JavaFX Scene Builder+Eclipse;找不到控制器类

华献
2023-03-14

我在Scene Builder中为Eclipse中的JavaFX项目创建了一个非常简单的fxml。当我尝试运行它时,由于未找到controller类,我得到了LoadException。

package application;

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

public class Main extends Application {
@Override
public void start(Stage primaryStage) {
    try {
        AnchorPane mainAnchorPane = (AnchorPane) FXMLLoader.load(Main.class.getResource("Q1.fxml"));
        primaryStage.setScene(new Scene(mainAnchorPane));
        primaryStage.show();
    } catch(Exception e) {
        e.printStackTrace();
    }
}

public static void main(String[] args) {
    launch(args);
}
}
    <?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.control.Button?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.TextField?>
<?import javafx.scene.layout.AnchorPane?>
<?import javafx.scene.layout.Pane?>

<fx:root prefHeight="417.0" prefWidth="462.0" type="AnchorPane" xmlns="http://javafx.com/javafx/8.0.60" xmlns:fx="http://javafx.com/fxml/1" fx:controller="myController">
   <children>
      <Pane layoutX="-245.0" layoutY="-261.0" prefHeight="94.0" prefWidth="117.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
         <children>
            <Button fx:id="myButton" layoutX="14.0" layoutY="14.0" mnemonicParsing="false" onAction="#onMyClick" text="Button" />
            <Label fx:id="myLabel" layoutX="14.0" layoutY="53.0" text="Label" />
            <TextField fx:id="myField" layoutX="66.0" layoutY="49.0" />
         </children>
      </Pane>
   </children>
</fx:root>
package application;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;

public class myController {

    @FXML
    private Button myButton;

    @FXML
    private Label myLabel;

    @FXML
    private TextField myField;

    @FXML
    void onMyClick(ActionEvent event) {

    }

}

附加的包资源管理器和错误的截图

如果你能告诉我是什么原因造成这个问题,我将不胜感激。

共有1个答案

颜瀚漠
2023-03-14

我找到了(Facepalm)。

Controller应该命名为:“Application.MyController”,因为我的包被称为Application。

 类似资料:
  • 我的目录 我试图创建学校的Spring启动应用程序,列出书籍到一个HTML页面从数据库与控制器。 就我个人而言,我认为问题在于控制器由于某种原因无法找到模板。因为当我通过chrome导航到想要的模板时,它只在页面上显示“booklist”,其他什么都没有。 我尝试创建一个全新的项目,并将代码从其他文件复制到新文件中,但没有结果。 我的控制器类: 我的html模板: 波姆。xml文件: 应用属性文件

  • 我使用SpringBoot 1.5.9并创建了: 我的简单控制器正在处理“/”并转发到index.html: 根据SpringBoot文档,应该呈现下的静态内容。如果创建文件夹并将我的放在那里,并在pom.xml中包含spring-boot-starter-thymeleaf依赖项,那么一切都很好。但是,我很困惑为什么src/main/resources/static/index.html的基本呈

  • 问题内容: 我是有经验的新手,并尝试使用1.3新版本。 这是我的代码 控制台显示此错误。 但是当我将角度源更改为 然后就可以了。我用铬。任何人都让我知道问题可能出在哪里。 问题答案: 默认情况下,1.3中不再支持全局控制器功能。请参阅更改日志 … $ controller将不再在窗口上查找控制器。在控制器上查看窗口的旧行为最初旨在用于示例,演示和玩具应用程序。我们发现允许全局控制器功能会鼓励不良做

  • 我使用mn create-app example.micronaut.complete创建了一个新的micronaut应用程序 之后,我使用intellij打开了项目,并将一个新类作为TestController添加到项目中,代码如下: 但我得到了

  • 问题内容: 我有一个带有applicationContext.xml和dispatcher-servlet.xml配置的Spring Web应用程序。我已经在applicationContext.xml中定义了,但是当我运行我的应用程序时,除非同时添加到dispatcher-servlet.xml中,否则找不到控制器。我在两个中都使用了相同的基本软件包,所以这不是问题。 我很困惑,因为我认为 ap

  • 问题内容: 这里发生了什么? 这是我的指令: 这是使用中的指令的示例: 这是实际的错误文本: 问题答案: 如此处所述:Angular NgModelController ,您应提供所需的控制器