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

缺少JavaFX应用程序类com.mainApp

周威
2023-03-14

Maven JavaFx项目编译但从控制台运行时给出“缺少JavaFx应用程序类”错误消息

上面的方法是“创建一个新的主类,并调用扩展应用程序的类的主方法”。

然而,我仍然面临以下问题:

2.java--module-path“c:\program files\java\javafx-sdk-11.0.2\lib”--add-modules=javafx.controls,javafx.fxml,javafx.base,javafx.media,javafx.web,javafx.swing-jar abc.jar

线程“main”java.lang.noClassDeffounder中出现异常错误:ch/qos/logback/core/context at com.amx.rms.transporter.tools.config.mainDivert.main(mainDivert.java:7)原因:java.lang.classnotfoundexception:ch.qos.logback.core.context at java.base/jdk.internal.loader.builtInclassLoader.loadClass(builtInclassLoader.java:583)at

下面是我的新主类:

public class MainDivert {

    public static void main(String[] args) throws Exception {
        try {
            MainApp.main(args);
        } catch (Exception e) {
            e.printStackTrace();
            throw e;
        }
    }
}

不知道我错过了什么?

共有1个答案

郭子航
2023-03-14

你的第二种方法看起来很有前途。您已经设法添加了JavaFX模块。这么说起作用了。看起来,您有一些其他的库可以依赖,比如logback。您还必须将它们添加到类路径(或modulepath)中。

Gradle实际上可以为您管理所有的依赖项。您可以使用gradle run启动应用程序。参见https://openjfx.io/openjfx-docs/#gradle

如果希望从命令行运行jar,则必须手动列出类路径(模块路径)中的所有依赖项。这可能会很痛苦。

 类似资料:
  • 我目前正在使用OpenJDK11和OpenJFX构建一个应用程序。它编译得很好,并启动,但没有标题栏,如果我单击靠近应用程序边缘,它注册为在它后面的任何窗口上的单击。 我正在使用IntelliJ IDEA,花了一段时间才弄清楚如何将OpenJFX与它一起使用。不管怎样,以下是系统的详细信息: 我运行的是初等OS5.0Juno(基于Ubuntu18.04,一切都是GTK)IntelliJ IDEA(

  • 我正在将我的Maven JavaFX应用程序从Java8迁移到Java11。Iv'e将my pom.xml中的插件更新为最新(符合Java 11)的插件。编译运行得很好,在“target”文件夹下的正确目录中提供了jar和所有依赖项和模块,但当我尝试运行jar文件时,会出现可怕的“Missing JavaFX application class”错误。无论我如何尝试更改插件配置-我总是收到此错误消

  • 我用的是wildfly主域。当我部署某个应用程序时,在domain.xml中创建sha(例如: DD234B0920C094B633EBB38C9432DEE9EA96ECFC /opt/wildfly/domain/data/content/ 就会消失。当我需要重新启动wildfly时,我会收到消息: 在domain.xml文件中存在SHA1。 我需要解决从/opt/wildfly/domain

  • 我注意到我的应用程序没有web.xml文件。我创建了一个maven项目,如下所述https://vaadin.com/docs/-/part/framework/tutorial.html但是在任何地方都找不到web.xml。你们知道为什么以及我应该怎么添加一个吗(比如在某个地方有一个模板吗?它在我的应用程序中的位置?)谢谢

  • 我有一个JavaFX8桌面应用程序,我正在创建一个应用程序包来将应用程序分发到Mac用户。我使用Oracle“自含应用程序打包”工具生成包。 文件关联是在Oracle“自包含应用程序打包”工具的Ant脚本中完成的,如下所示: 在Java代码中,我获得的一个实例,然后注册的侦听器,如下所示: 您可以在这里看到完整的代码。

  • 我想制作一个使用JavaFX GUI的应用程序。我在一篇堆栈溢出文章中读到,这些包应该集成在OpenJDK(JavaFX和OpenJDK)中。因此,我设置了OpenJDK13(jdk13下载页面),但找不到需要导入的包。例如:我找不到类。 它位于哪里?我需要下载其他东西吗? 我在我的问题中特别解释了我所期望的,因为我以前在普通JDK中使用JavaFX。由于OpenJDK不是这种情况,我询问如何正确