Ошибка в приложении JavaFx

184
01 апреля 2019, 00:20

Скачал с распаковал javafx sdk В папку C:\Program Files\Java\javafx-sdk-11.

Создаю пустой проект JavaFx В Intellij Idea. В настройках в Project SDK указываю путь до jdk 11, даю название проекту, затем в проекте в Project Scructure добавляю библиотеки указывая путь до C:\Program Files\Java\javafx-sdk-11\lib. В проект добавляются библиотеки javafx.

Пытаюсь запустить проект выдает ошибку

Error: JavaFX runtime components are missing, and are required to run this application

Затем нашел на SO решение что нужно в Run->Edit Configurations -> VM Options вставить путь --module-path="C:\Program Files\Java\javafx-sdk-11\lib" --add-modules=javafx.controls

Вставляю и при запуске выдает ошибку

Exception in Application start method java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplicationWithArgs(LauncherImpl.java:464) at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication(LauncherImpl.java:363) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:566) at java.base/sun.launcher.LauncherHelper$FXHelper.main(LauncherHelper.java:1051) Caused by: java.lang.RuntimeException: Exception in Application start method at javafx.graphics/com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:900) at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:195) at java.base/java.lang.Thread.run(Thread.java:834) Caused by: java.lang.IllegalAccessError: class com.sun.javafx.fxml.FXMLLoaderHelper (in unnamed module @0x555df7da) cannot access class com.sun.javafx.util.Utils (in module javafx.graphics) because module javafx.graphics does not export com.sun.javafx.util to unnamed module @0x555df7da at com.sun.javafx.fxml.FXMLLoaderHelper.(FXMLLoaderHelper.java:38) at javafx.fxml.FXMLLoader.(FXMLLoader.java:2056) at sample.Main.start(Main.java:13) at javafx.graphics/com.sun.javafx.application.LauncherImpl.lambda$launchApplication1$9(LauncherImpl.java:846) at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runAndWait$12(PlatformImpl.java:455) at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$10(PlatformImpl.java:428) at java.base/java.security.AccessController.doPrivileged(Native Method) at javafx.graphics/com.sun.javafx.application.PlatformImpl.lambda$runLater$11(PlatformImpl.java:427) at javafx.graphics/com.sun.glass.ui.InvokeLaterDispatcher$Future.run(InvokeLaterDispatcher.java:96) at javafx.graphics/com.sun.glass.ui.win.WinApplication._runLoop(Native Method) at javafx.graphics/com.sun.glass.ui.win.WinApplication.lambda$runLoop$3(WinApplication.java:174) ... 1 more Exception running application sample.Main

Подскажите пожалуйста как правильно подключить JavaFX? Что я не так делаю

Answer 1

Run->Edit Configurations -> VM Options вставил

--module-path="C:\Program Files\Java\javafx-sdk-11\lib"
--add-modules=javafx.controls
--add-modules=javafx.fxml

ошибка пропала. Я так понял что нужно было добавить еще и модуль fxml?

READ ALSO
Java оператор “if” [закрыт]

Java оператор “if” [закрыт]

Написал данный код и он как-то некорректно работает

138
Сравнить поля обьектов

Сравнить поля обьектов

Задача - приходит два обьекта "старый" и "новый" вариантНеобходимо сравнить их поля и если они одинаковы - засетить в поле null, если разные - засетить...

169
java.sql.SQLException: The server time zone. MySQL 8

java.sql.SQLException: The server time zone. MySQL 8

Использую MySQL 8 на ОС Windows 10версия коннектора 8

148