首页 > 解决方案 > Mac OS 上 Eclipse 中的 JavaFx

问题描述

你好,我正在为学校做一个项目。我在 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);
    }
}

标签: javaeclipsejavafxjava-11macos-big-sur

解决方案


看起来没有什么问题,除了(假设您使用的是 Java 9 或更高版本)也许您需要添加一个 module-info.java 只需将其弹出到 src 或 java 目录下,这是我用来让您的项目进行的一个

    module Labwork12 { 
requires javafx.fxml; 
requires javafx.controls; 
requires javafx.graphics; 
requires javafx.web; 
requires java.logging; 
requires java.desktop; 
opens edu.unlv.mis768.labwork12; 
}

推荐阅读