Java 使用OpenJDK在Windows上运行JabRef

Java 使用OpenJDK在Windows上运行JabRef,java,javafx,Java,Javafx,虽然我只是想安装JabRef,但我很惊讶这个看似简单的任务给了我这么多麻烦 我使用的是Windows 10,我想使用JabRef(最新版本,即4.3.1)。我没有用于Java8的JRE-Order JDK,但我有OracleJava12JDK。 JabRef需要JDK 8,但我无法在没有登录的情况下从Oracle下载它。(由于他们很爱管闲事,我拒绝注册下载。) 因此,我尝试使用OpenJDK,但JavaFX没有提供OpenJDK,而JabRef需要它。我也下载了OpenJFX,但现在我不知道如何

虽然我只是想安装JabRef,但我很惊讶这个看似简单的任务给了我这么多麻烦

我使用的是Windows 10,我想使用JabRef(最新版本,即4.3.1)。我没有用于Java8的JRE-Order JDK,但我有OracleJava12JDK。 JabRef需要JDK 8,但我无法在没有登录的情况下从Oracle下载它。(由于他们很爱管闲事,我拒绝注册下载。)

因此,我尝试使用OpenJDK,但JavaFX没有提供OpenJDK,而JabRef需要它。我也下载了OpenJFX,但现在我不知道如何把所有的东西放在一起。OpenJFX没有“安装”,因此JabRef仍然抱怨没有JavaFX:

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 com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:81)
at com.exe4j.runtime.WinLauncher.main(WinLauncher.java:94)
at com.install4j.runtime.launcher.WinLauncher.main(WinLauncher.java:25)
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)
... 15 more
所以,我的问题是:

  • 如何定义OpenJFX的位置?或者
  • 在哪里可以获得包含JavaFXforJava8的JDK或JRE

致以最良好的祝愿

好的,我找到了一个适合我的解决方案。我只是使用了一个JDKforJava8,其中包括JavaFX:


我卸下JabRef并重新安装了它。当我重新安装JRE时,系统提示我说它在哪里。在那之后,它似乎工作得很好。

不错的资源。不过,尚未更新。