gpt4 book ai didi

java - 我在通过 cli 接口(interface) : JavaFX runtime components are missing, 运行时遇到错误,并且需要运行此应用程序

转载 作者:行者123 更新时间:2023-12-02 09:40:04 28 4
gpt4 key购买 nike

我用 Intellij 开发了一个 javafx 应用程序。问题是,当我通过 Intellij 运行程序时,没有问题,而如果我通过命令行运行或只是双击,则程序不会运行

错误:缺少 JavaFX 运行时组件,并且需要运行此应用程序

最佳答案

从 Java 11 开始,JavaFX 不再是 JDK 的一部分。您必须自己添加它。

您还必须创建一个单独的类来保存您的 main 方法。它可以是任何不扩展 JavaFX 类的类。这是因为JavaFX加载 native 库,而 native 库路径在Java启动主类的阶段不可用。

如果您的程序是一个模块,您只需将 JavaFX SDK 添加到您的模块路径即可:

java -p /home/sette/projects/example/build:/opt/javafx-jmods-12 \
-m com.example.myapp/com.example.myapp.Startup

(如果您在 Windows 上运行,请将 / 替换为 \,并将 : 替换为 ; .)

如果您的程序不是模块,则需要包含 .jar 文件和 native 库:

java -cp /home/sette/projects/example/build/MyApp.jar:/opt/javafx-sdk-12/lib/"*" \
-Djava.library.path=/opt/javafx-sdk-12/lib \
com.example.myapp.Startup

同样,主类(上面示例中的Startup)不得扩展javafx.application.Application。它可以而且应该调用 Application.launch .

关于java - 我在通过 cli 接口(interface) : JavaFX runtime components are missing, 运行时遇到错误,并且需要运行此应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57151848/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com