如何在Ubuntu 18.04.2 LTS上使Java FX与OpenJDK 8一起运行?

Wol*_*ahl 10 java ubuntu javafx openjfx

尝试在环境中编译JavaFX应用程序时:

java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build 1.8.0_212-8u212-b03-0ubuntu1.18.04.1-b03)
OpenJDK 64-Bit Server VM (build 25.212-b03, mixed mode)

cat /etc/lsb-release 
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.2 LTS"
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:

cannot access javafx.event.EventHandler
[ERROR]   class file for javafx.event.EventHandler not found
Run Code Online (Sandbox Code Playgroud)

我尝试通过以下链接找到解决方案:

最有希望的行动在哪里

  1. 使用apt安装openjfx
  2. 将JAVA_HOME环境变量设置为/ usr / lib / jvm / java-8-openjdk-amd64

但是错误仍然存​​在。

要使OpenJDK 8和JavaFX在Ubuntu 18.04.2 LTS上运行需要做什么?

Wol*_*ahl 18

来自的提示

https://github.com/JabRef/help.jabref.org/issues/204

帮助。命令:

apt purge openjfx
apt install openjfx=8u161-b12-1ubuntu2 libopenjfx-jni=8u161-b12-1ubuntu2 libopenjfx-java=8u161-b12-1ubuntu2
apt-mark hold openjfx libopenjfx-jni libopenjfx-java
Run Code Online (Sandbox Code Playgroud)

解决了问题。非常感谢https://github.com/Druidefix。(如果您想自己回答,我会很乐意删除我自己的答案...)

  • 在当前的 ubuntu 版本 (20.04) 中,这些软件包不再可用。现在 openjfx 默认为 v11。 (2认同)
  • 我创建了新问题 /sf/ask/4324835861/,希望找到更新的修复程序,因为此答案中的修复程序最近停止工作。 (2认同)