【发布时间】:2021-03-15 00:24:36
【问题描述】:
您好,我正在为学校做一个项目。我在 Mac 上的 Eclipse 中使用 JavaFX 时遇到问题。在 Catalina 和现在在 Big Sur 有问题。我将在下面发布基本代码,因为它不适用于任何东西。
我收到以下错误:
错误:无法找到或加载主类 edu.unlv.mis768.labwork12.MyFirstGUI 原因: java.lang.ClassNotFoundException: edu.unlv.mis768.labwork12.MyFirstGUI
当我滚动查看 JavaFX 的导入时,它会说:
导入 javafx 无法解析
当我滚动到“应用程序”时,它会说:
应用程序无法解析为类型
我不确定该怎么做。我正在考虑购买一台 Windows 笔记本电脑来完成这个项目。
非常感谢您的建议或帮助!
代码如下:
package edu.unlv.mis768.labwork12;
import javafx.application.*;
import javafx.scene.*;
import javafx.scene.control.*;
import javafx.stage.*;
@SuppressWarnings("restriction")
public class Basics extends Application {
@Override /* Method in Application class */
public void start(Stage primaryStage) {
int sceneWidth = 100, sceneHeight = 150;
Button button = new Button("Fear The Turtle");
Scene scene = new Scene(button, sceneWidth, sceneHeight);
primaryStage.setTitle("FX Button");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
Application.launch(args);
}
}
【问题讨论】:
-
看起来没什么问题,除了(假设您使用的是 Java 9 或更高版本)也许您需要添加一个 module-info.java 只需将其弹出到 src 或 java 目录下,这里就是我曾经让您的项目进行模块 Labwork12 { 需要 javafx.fxml;需要 javafx.controls;需要 javafx.graphics;需要 javafx.web;需要java.logging;需要 java.desktop;打开 edu.unlv.mis768.labwork12; }
-
感谢您的回复。我对使用 Java 和 eclipse 非常陌生。如何添加/创建 module-info.java?
-
我创建了一个 module-info.java 并复制了您的陈述。但是,我仍然收到错误:文件中的“javafx.fxml 无法解析为模块”。我已将文件放在项目中的 src 下,但它在我的包之外。
-
你的包外面是正确的。接下来您是否将 Javafx jar 库文件添加到您的项目中?
-
我昨晚买了一台windows机器,现在可以在上面运行了。我仍在尝试找出我的 mac,但它并不那么简单
标签: java eclipse javafx java-11 macos-big-sur