有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

MacOS ARM上的java JavaFX:图形设备初始化失败

我在Intellij IDE内的MacBookM1上使用JavaFX。我的应用程序在Intellij中按预期构建和运行,但当我将应用程序构建到可执行jar中并从终端运行时,我收到错误:

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:222)
    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 com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658)
    at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678)
    at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
    at java.base/java.lang.Thread.run(Thread.java:832)
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)
    ... 1 more
Exception in thread "main" java.lang.RuntimeException: No toolkit found
    at com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:272)
    at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:267)
    at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:158)
    at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:658)
    at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:678)
    at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195)
    at java.base/java.lang.Thread.run(Thread.java:832)

我已经找到了有关图形驱动程序问题的可能解决方案,但应用程序在IDE中运行良好的事实让我相信这不是问题所在(也没有一个解决方案是针对M1 MacBooks的)。如果需要任何其他信息,请让我知道!提前谢谢你


共 (1) 个答案

  1. # 1 楼答案

    试试Liberica OpenJDK,在MacBook Pro 2020 M1上运行。 我也有同样的问题,在安装了LibericaFX的完整版本后,问题解决了

    • Liberica的完整版本包括LibericaFX,它基于OpenJFX和最小虚拟机(如果适用)
    • 标准版最适合不需要任何附加组件的服务器和桌面部署
    • Liberica的Lite版本最适用于云部署,并针对大小进行了优化

    也可以在HomeBrew上找到

    brew tap bell-sw/liberica
    brew install liberica-jdk16-full