当前位置: 首页 > 知识库问答 >
问题:

如何使 javaFX 在 Mac 中与 VSCode 配合使用?

元叶秋
2023-03-14

我正在尝试使JavaFX与VSCODE一起使用,但是遇到了此错误;

我安装了最新的 java“openjdk 17.0.1 2021-10-19”,并且使用的是最新的 javaFx17.0.1。我添加了所有引用库并添加了 vmArgs 路径文件。

我使用的是基本型号macbookpro m1。

这是我的vmArgs路径:

"vmArgs": "--module-path /Users/jeffreygrospe/Downloads/javafx-sdk-17.0.1/lib --add-modules javafx.controls,javafx.fxml",

这是javafx lib文件夹中的内容:

javafx-swt.jar      javafx.web.jar      libjfxmedia.dylib
javafx.base.jar     libdecora_sse.dylib libjfxmedia_avf.dylib
javafx.controls.jar libfxplugins.dylib  libjfxwebkit.dylib
javafx.fxml.jar     libglass.dylib      libprism_common.dylib
javafx.graphics.jar libglib-lite.dylib  libprism_es2.dylib
javafx.media.jar    libgstreamer-lite.dylib libprism_sw.dylib
javafx.properties   libjavafx_font.dylib
javafx.swing.jar    libjavafx_iio.dylib
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 javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer.getInstance(QuantumRenderer.java:283)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumToolkit.init(QuantumToolkit.java:254)
        at javafx.graphics/com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:264)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:291)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:163)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:659)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:410)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:364)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1071)
Caused by: java.lang.RuntimeException: Error initializing QuantumRenderer: no suitable pipeline found
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:95)
        at javafx.graphics/com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
        at java.base/java.lang.Thread.run(Thread.java:833)
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1071)
Caused by: java.lang.RuntimeException: No toolkit found
        at javafx.graphics/com.sun.javafx.tk.Toolkit.getToolkit(Toolkit.java:276)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:291)
        at javafx.graphics/com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:163)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:659)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:410)
        at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:364)
        ... 5 more

共有1个答案

厍兴腾
2023-03-14

我终于设法让JavaFX在Mac m1上使用VScode。通过足够的研究,是JDK导致了错误。我使用“Liberica JDK 17.0.1 12,LTS”它工作得很好。

另一个选择是使用Azul jdk v17。

 类似资料:
  • 问题内容: 我最近安装了隐私vpn,事实证明启用的openvpn会破坏docker。 当我尝试运行时,出现以下错误 禁用vpn可以解决此问题(但是我宁愿不禁用它)。有什么办法可以使这两者和平共处?我使用debian jessie,并且我的openvpn具有以下版本字符串 很多人通过禁用openvpn来“解决”此问题,因此我专门询问如何使这两个工具同时工作。 如果这有什么不同,我的vpn提供程序是:

  • 我无法将Tosca扩展用于Chrome。当我安装扩展并尝试使用Tosca运行扫描时,它会显示以下消息 当我按下Yes(是)按钮时,它显示以下错误 无法解决此问题。此外,扩展从浏览器中消失,我不得不再次安装它。 谢啦

  • 问题内容: 我是一个初学者,现在我想用java启动GUI应用程序。我开始阅读一些有关FX的书籍,但并未在JDK11上编译..我是否需要使用jdk8还是有什么办法可以在jdk11上完成? 问题答案: JavaFX已脱离JDK11(Oracle的官方JDK和OpenJDK)的捆绑。为了将JavaFX与JDK11结合使用,您必须下载独立的JavaFX11运行时。

  • 问题内容: 我想编写一个非常简单的Java 3D编辑器(用于实验)。我了解JavaFX的基本用法,并且了解足够的OpenGL知识。但是我所有的OpenGL经验都是来自使用C / C ++。 我可以在JavaFx应用程序中制作“画布”并在其上映射OpenGL视口吗? 问题答案: 在内部,JavaFX可以将OpenGL用作渲染管道,因此需要在两者之间进行一些集成以避免冲突。 JavaFX中的OpenG

  • 我正在使用Jersey Guice,需要配置一个自定义的< code>ExceptionMapper 我的模块看起来像这样: 这是我的:

  • 我将MySQL数据源设置为主bean: 并将以下配置放入应用程序.属性中: 令人遗憾的是,这些HikariCP配置没有被读取: