最终目标:在 Ubuntu 18.04 LTS 上,使用 eclipse IDE 使用 jdk11 LTS 开发 javafx 应用程序。
问题:Eclipse 似乎不理解 jdk11 是什么。它无法识别内置库,当然也无法识别 javafx。
Ubuntu 已安装并且据我所知运行正常。
java -version
:
java version "11.0.2" 2019-01-15 LTS
Java(TM) SE Runtime Environment 18.9 (build 11.0.2+9-LTS)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.2+9-LTS, mixed mode)
JavaFX:
https://gluonhq.com/products/javafx/
Eclipse 4.11 (2019-03) 已安装,并且运行良好。我使用的是 jdk8,没有 javafx 应用程序。
我尝试按照网上的多个教程操作……但我却束手无策。这很令人沮丧。
感谢您的时间〜
答案1
在 Eclipse 2019-03(4.11.0)中,默认 Java 版本是通过以下方式设置的:窗户->优先->已安装的 JRE-> 选择已安装的 JRE 的名称和位置,如下面的屏幕截图所示。
Ubuntu 18.04 中的 Eclipse 2019-03(4.11.0)
在 Ubuntu 16.04 及更高版本的默认存储库中,JavaFX 被打包为名为 openjfx 的单独包。要在 Ubuntu 18.04 中安装它,请打开终端并输入:
sudo apt install openjdk-11-jdk openjfx
您可以选择安装 openjdk-8-jdk 来代替或与 openjdk-11-jdk 一起安装。openjfx 可与 Ubuntu 18.04 中 Eclipse 中的 openjdk-8-jdk 和 openjdk-11-jdk 一起使用。
答案2
我将详细说明我的安装和设置过程,以防其他人遇到麻烦:
在 Ubuntu 18.04 上设置 javafx11、jdk11 和 Eclipse
安装openjdk11和javafx11 SDK
sudo apt install openjdk-11-jdk openjfx
一定要选择javafx的SDK版本!
检查java版本读出正确的jdk版本
java -version
输出应如下所示:
openjdk version "11.0.3" 2019-04-16
OpenJDK Runtime Environment (build 11.0.3+7-Ubuntu-1ubuntu218.04.1)
OpenJDK 64-Bit Server VM (build 11.0.3+7-Ubuntu-1ubuntu218.04.1, mixed mode, sharing)
安装最新的 Eclipse 2019-03(4.11)
创建项目时:
- 创建一个新的 Java 项目
- 确保项目使用的jdk是jdk11
- 不要创建 module.info
- 右键单击项目文件夹,然后单击“属性”。转到“库”选项卡,然后左键单击“模块路径”。在右侧,选择“添加库”,然后选择“用户库”
- 将其命名为 javafx
- 包含 /path/to/javafx/lib 中的所有 .jar 文件
- 不要包含任何其他文件类型!
- 将新创建的库添加到项目模块路径
- 在运行配置中,在运行任务栏中找到“参数”选项卡,并将其添加到 VM 参数中:
--module-path /usr/lib/jvm/javafx-sdk-11.0.2/lib --add-modules javafx.controls,javafx.fxml
- 确保您的 javafx 的路径正确!
答案3
https://bugs.launchpad.net/ubuntu/+source/openjfx/+bug/1825054
jfx 在 ubuntu 下不再起作用...等待修复很长时间了(使用 jdk 8 或 11)