javafx应用程序不作为可运行的jar运行,但在eclipse中运行得非常好

s2j5cfk0  于 2021-06-30  发布在  Java
关注(0)|答案(0)|浏览(269)

我把问题缩小到一个非常简单的javafx应用程序。我只想要一个没有任何蓬松特征的基本窗口。你可以在下面看到我的代码。问题是它在eclipse环境中工作得很好,但是当我将它导出为可运行的jar并在逻辑上双击它时,什么都没有出现。我找了好几个小时,尝试了网上提出的几种解决办法。这是我为解决这个问题而不顾一切的努力的一个缩影。
首先,我将此代码添加到vm参数中

--module-path "C:\Program Files\JavaFX\javafx-sdk-15.0.1\lib" --add-modules javafx.controls

其次,我使用命令行编写了java类,并尝试运行它来查看出了什么问题。命令提示:

Error: Could not find or load main class saeedhashemi.MainClas
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

然后,在命令提示符中运行java的行出现之前,我添加了vm参数中存在的代码,我的应用程序窗口出现了,但是这个技巧仍然不能解决我的主要问题。第三,我解压缩了runnable jar,以查看javafx库是否在正确的位置可用。最后,作为最后一根稻草,我尝试直接在命令行中运行runnable jar(由eclipse生成),令我惊讶的是cmd说:

Error: JavaFX runtime components are missing, and are required to run this application

有没有人能帮我走出这地狱。为了获得更多的信息,我不熟悉maven和gradle,我想做一个简单的项目

public class MainClass extends Application {

public static void main(String[] args) {
    launch(args);
}

@Override
public void start(Stage stage) throws Exception {
    Canvas canvas = new Canvas(600, 600);

    AnchorPane root = new AnchorPane(canvas);
    Scene scene = new Scene(root);

    stage.setScene(scene);
    stage.show();

}

}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题