gpt4 book ai didi

java - Intellij 封装 JavaFx 应用程序

转载 作者:行者123 更新时间:2023-11-30 03:56:29 26 4
gpt4 key购买 nike

我正在使用 Intelij,但在打包 Java 应用程序时遇到一些问题。

我正在使用 Artifact 来打包我的应用程序。可以选择创建 Jar 包或 JavaFx 包。如果我使用 JavaFx 工件,我需要指定一个 Application 类来启动。我的包使用标准 java main(String[] args) 类型启动,因为它还可以选择严格从命令行运行(无 UI),因此此选项对我不起作用。

如果我创建一个 jar,我的 main 方法显然不知道 Application 类是什么:线程“main”java.lang 中的异常。 NoClassDefFoundError:javafx/application/Application

我完全缺少什么魔力?任何朝正确方向的碰撞将不胜感激。

最佳答案

如果您遇到此异常,那是因为您的类路径中没有 JavaFX 运行时。在 JavaFX 2.2 安装目录中,有一个名为 rt 的文件夹。在该文件夹内,您有 jfxrt.jar 和一些 native 库。

如果您想运行 JavaFX 应用程序,jfxrt.jar 必须包含在类路径中。你没有它,这就是为什么 Java 找不到 javafx.application.Application 类。

例如(在 Windows 中):C:\Program Files\Oracle\JavaFX 2.2 SDK\rtC:\Program Files\Oracle\JavaFX 2.2 SDK\rt\bin*.dllC:\Program Files\Oracle\JavaFX 2.2 SDK\rt\lib\jfxrt.jar

如果您使用 Oracle Java 8,则 jfxrt.jar 将自动位于运行时类路径中,因此您无需手动将 jfxrt.jar 添加到Java 8 的类路径。

关于java - Intellij 封装 JavaFx 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23046344/

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