JavaFX 应用程序(JDK 和 JRE 8)问题 Greenfoot Ubuntu 18.04

JavaFX 应用程序(JDK 和 JRE 8)问题 Greenfoot Ubuntu 18.04

我最近安装了 JRE 8 和 JDK 8 以便在 Ubuntu 18.04 中使用 Greenfoot。

我知道我的 Java 安装大部分都有效(我可以在 atom 中编写代码并使用脚本运行它)。但是,当我尝试在终端中启动 greenfoot 时,我得到了以下信息:

Exception in thread "main" java.lang.NoClassDefFoundError: javafx/application/Application
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at bluej.Boot.main(Boot.java:193)
Caused by: java.lang.ClassNotFoundException: javafx.application.Application
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 13 more

这似乎是 greenfoot 无法找到并运行 JavaFX 类的问题。据我了解,JavaFX 安装附带 JRE 8。

JavaFX 是否附带默认的 JRE 8 和 JDK 8 安装?我需要将 greenfoot 指向 JavaFX 位置吗?

即使您不熟悉 greenfoot,任何帮助都会受到感谢。我看到其他帖子似乎在处理类似的问题,但不确定如何在我的情况下应用修复。

请帮忙!

答案1

好吧。我觉得自己像个傻瓜。但是如果你也遇到这个问题,可以尝试以下方法:

  • 确保您下载了 JDK8 的 oracle 版本(您只需要 JDK),您通过 apt 下载的版本没有 FX(我相信)。

  • 确保您的 greenfoot 安装使用的是 oracle JDK8

  • 尝试使用纯 Java 版本。这允许您指定 JDK 安装的位置,从而轻松选择 Oracle JDK。

相关内容