JAVA 12: «Сбой инициализации графического устройства для: d3d, sw Ошибка инициализации QuantumRenderer: не найден подходящий конвейер» с запущенным JavaFx12 jar - PullRequest
0 голосов
/ 09 июля 2019

Я давно использую jdk 8, а недавно я скачал jdk 12. Очевидно, у меня все еще есть программы, работающие на jdk 8, и я не планирую их удалять.Я часами смотрел на другие вопросы и видео, но я не нашел решения для своей проблемы, я хотел протестировать программу, поэтому я сделал файл JAR, когда я попытался запустить его из cmd, он показал мне это:

Exception in thread "main" java.lang.UnsupportedClassVersionError: Main has 
been
 compiled by a more recent version of the Java Runtime (class file version 
56.0)
, this version of the Java Runtime only recognizes class file versions up to 
52.
0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.access$100(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.net.URLClassLoader$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)

Итак, я задал так много вопросов о запуске нескольких JDK, и вот что я сделал: 1- изменил переменную пути на JDK 12 следующим образом:

3.6.1\bin;C:\Program Files\Java\jdk-12.0.1\bin

2- Деактивировал JRE 8 следующим образом: jre

, но когда я попытался выполнить файл JAR, возникла та же проблема, и когда я проверяю версию Java с помощью Java-версии этопоказывает:

java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

любые рекомендации будут рекомендованы.Я упомянул Windows 7, потому что все видео, которые я нашел, предназначены для Windows 10.

РЕДАКТИРОВАТЬ: теперь я полностью удалил оба jdks, переустановил jdk 12, я использую IntelliJ и при выполнении изон работает нормально, но для моих старых банок это показывает мне:

C:\Users\Simou\Desktop\INOVA\Stock\INOVA\out\artifacts\Rayane_jar>java -jar 
INOV
A.jar
Error: Could not find or load main class Main
Caused by: java.lang.NoClassDefFoundError: javafx/application/Application

этот сосуд работал отлично до всего этого.

EDIT2: После попыткиРешение Хольгера, теперь я получил это, зная, что у меня есть библиотека JavaFx 12, импортированная в проект, и конфигурация завершена, в IntelliJ, как я упоминал ранее, когда я выполняю из IDE, все работает нормально, как я могу это исправитьсейчас?

"C:\Program Files\Java\jdk-12.0.1\bin\java" -jar TP_NLP_ALGO.jar
Graphics Device initialization failed for :  d3d, 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 com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.jav a: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: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)
    ... 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:835)

1 Ответ

0 голосов
/ 20 июля 2019

Так что после поиска среди вопросов, которые кажутся похожими на мои, я нашел этот ответ миграция с JavaFX8 на 11 , поэтому я добавил путь к бину JavaFX12 в переменную PATH, и я выполнил из командной строкикак сказал мне @Holger в своих комментариях (потому что в моей системе два JDK, и я создал приложение, используя 12).Ну, это сработало, как и ожидалось, я надеюсь, что это будет полезно для будущих посетителей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...