maria Asked: 2018-11-09 07:56:32 +0800 CST2018-11-09 07:56:32 +0800 CST 2018-11-09 07:56:32 +0800 CST 缺少 JavaFX,Ubuntu 18.04 772 我有 Java 8 和 Ubuntu 18.04。我正在使用 NetBeans,当尝试制作一些程序时,由于缺少 JavaFX,它无法完成。 我从 Oracle 的站点安装了带有 NetBeans 的 Java JDK,并认为一切都包括在内,但显然我没有检查好。 我该怎么办,我应该安装什么?我对此不太擅长,不知道问题出在 Ubuntu 还是 Java 上。:( java jdk 18.04 javafx 5 个回答 Voted Best Answer karel 2018-11-09T08:23:17+08:002018-11-09T08:23:17+08:00 在 Ubuntu 16.04 和更高版本的默认存储库中,JavaFX 被打包为一个名为 openjfx 的单独包。要在 Ubuntu 18.04 中安装它,请打开终端并键入: sudo apt install openjdk-8-jdk openjfx openjfx 软件包也可以从所有当前支持的 Ubuntu 版本的默认存储库中安装。 检查 JDK 8 是否被选为 Netbeans 中的默认 Java 版本 ->工具->选项-> Java -> Nashorn选项卡 -> 单击Manage Platforms按钮 -> 单击Add Platform按钮 -> 单击标记为Java Standard Edition的单选按钮-> 单击下一步按钮 -> 浏览/usr/lib/jvm/java-8-openjdk-amd64并选择它作为默认 Java 版本。 您可以选择安装 openjdk-11-jdk 来代替 openjdk-8-jdk 或与 openjdk-8-jdk 一起安装。openjfx 在 Ubuntu 18.04 的 Netbeans 中与 openjdk-8-jdk 和 openjdk-11-jdk 一起使用。我在 Ubuntu 18.04 中使用 Netbeans 8.2 10.0。 Qazi Fahim Farhan 2019-09-08T01:52:22+08:002019-09-08T01:52:22+08:00 我认为最简单的方法是安装sdkman。安装后,检查所有可用的候选人: $ sdk list java 这将显示多种选择。您可以选择一个带FX后缀的。就我而言,我可以看到如下内容: Azul ZuluFX | | 11.0.2 | zulufx | | 11.0.2-zulufx | | 8.0.202 | zulufx | | 8.0.202-zulufx BellSoft | | 12.0.2 | librca | | 12.0.2-librca | | 11.0.4 | librca | | 11.0.4-librca 因此,您可以使用以下命令安装它: $ sdk install java 11.0.2-zulufx 或者, $ sdk install java 8.0.202-zulufx # if you want java 8 你很高兴去!我希望这有帮助!:) Lotfi Hocini 2019-09-16T10:17:47+08:002019-09-16T10:17:47+08:00 这个问题可以通过在运行 javafx 应用程序时添加 openjfx 路径和模块作为参数来解决,我已经在这个链接上发布了解决方案。 祝你好运 洛菲 Valentin Hörzi 2020-01-11T00:14:19+08:002020-01-11T00:14:19+08:00 我有同样的问题。我安装了 openjdk,但它与 openjfx 不兼容,因为唯一可用的版本是 openjfx 11。 所以我搜索了一段时间,偶然发现了 ZuluFX。我是用 sdkman 安装的,你可以从他们的网站下载。安装 sdkman 后,安装 zulufx 即可。 $ sdk 安装 java 8.0.202-zulufx 您的 $JAVA_HOME 应该是安装 sdk man 的路径 -> /home/valentin/.sdkman/candidates/java/current 现在您可以将 JDK 切换到 Netbeans 中的该路径,它应该可以正常工作! Dmitry 2020-09-15T08:30:06+08:002020-09-15T08:30:06+08:00 Liberica JDK“完整”包含 JavaFX。.tar.gz 和 .deb 包有 8、11 和最新版本: https://bell-sw.com/java.html 如上所述(带有更新),它也可以在 sdkman 中使用。 对于定期的 apt 更新,有一个官方的 apt 存储库: https://www.bell-sw.com/pages/repositories/#apt 要安装包含 FX 的版本 11,请使用 sudo apt install bellsoft-java11-full https://bell-sw.com/pages/repositories/#packages-versioning
在 Ubuntu 16.04 和更高版本的默认存储库中,JavaFX 被打包为一个名为 openjfx 的单独包。要在 Ubuntu 18.04 中安装它,请打开终端并键入:
openjfx 软件包也可以从所有当前支持的 Ubuntu 版本的默认存储库中安装。
检查 JDK 8 是否被选为 Netbeans 中的默认 Java 版本 ->工具->选项-> Java -> Nashorn选项卡 -> 单击Manage Platforms按钮 -> 单击Add Platform按钮 -> 单击标记为Java Standard Edition的单选按钮-> 单击下一步按钮 -> 浏览
/usr/lib/jvm/java-8-openjdk-amd64
并选择它作为默认 Java 版本。您可以选择安装 openjdk-11-jdk 来代替 openjdk-8-jdk 或与 openjdk-8-jdk 一起安装。openjfx 在 Ubuntu 18.04 的 Netbeans 中与 openjdk-8-jdk 和 openjdk-11-jdk 一起使用。我在 Ubuntu 18.04 中使用 Netbeans
8.2 10.0。我认为最简单的方法是安装sdkman。安装后,检查所有可用的候选人:
这将显示多种选择。您可以选择一个带
FX
后缀的。就我而言,我可以看到如下内容:因此,您可以使用以下命令安装它:
或者,
你很高兴去!我希望这有帮助!:)
这个问题可以通过在运行 javafx 应用程序时添加 openjfx 路径和模块作为参数来解决,我已经在这个链接上发布了解决方案。
祝你好运
洛菲
我有同样的问题。我安装了 openjdk,但它与 openjfx 不兼容,因为唯一可用的版本是 openjfx 11。
所以我搜索了一段时间,偶然发现了 ZuluFX。我是用 sdkman 安装的,你可以从他们的网站下载。安装 sdkman 后,安装 zulufx 即可。
$ sdk 安装 java 8.0.202-zulufx
您的 $JAVA_HOME 应该是安装 sdk man 的路径 -> /home/valentin/.sdkman/candidates/java/current
现在您可以将 JDK 切换到 Netbeans 中的该路径,它应该可以正常工作!
Liberica JDK“完整”包含 JavaFX。.tar.gz 和 .deb 包有 8、11 和最新版本:
https://bell-sw.com/java.html
如上所述(带有更新),它也可以在 sdkman 中使用。
对于定期的 apt 更新,有一个官方的 apt 存储库:
https://www.bell-sw.com/pages/repositories/#apt
要安装包含 FX 的版本 11,请使用
https://bell-sw.com/pages/repositories/#packages-versioning