【发布时间】:2019-12-07 04:33:12
【问题描述】:
当我尝试运行要引入 Linux 的程序时,我遇到了一个奇怪的错误。我能够在 Windows 和 OSX 上毫无问题地编译/运行,但在 Ubuntu 上看到了这个问题。
当我通过 Netbeans 构建/运行/调试程序时,一切都很糟糕。它运行,它的套件中的所有测试都完成了,等等。当我尝试独立于 IDE 运行它时,我遇到了以下问题:
Graphics Device initialization failed for : es2, sw
Error initializing QuantumRenderer: no suitable pipeline found
java.lang.RuntimeException: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
at com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(QuantumRenderer.java:280)
at com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:243)
at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:260)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158)
at javafx.embed.swing.JFXPanel.lambda$initFx$1(JFXPanel.java:224)
at java.base/java.lang.Thread.run(Thread.java:835)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:94)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:124)
我已经为此努力了几个小时,任何想法/帮助都将不胜感激。
【问题讨论】:
-
您的项目使用什么版本的 Java?在终端窗口中执行
java -version会显示什么? -
我刚升级到Java 12,在控制台显示版本为:OpenJDK Runtime Environment (build 12.0.2+10)
-
您是否从命令行添加了模块?
java --module-path $PATH_TO_FX --add-modules javafx.controls HelloFX -
我已经通过 netbeans UI 添加了这些,在 Properties->Libraries->Run->Modulepath
-
JavaFX 不是 Java 12 SDK 的一部分,那么如何在没有在命令行上指定类路径的情况下运行 JavaFX 应用程序?您的程序如何能够加载 JavaFX 类?
标签: java ubuntu javafx openjfx ubuntu-19.04