Как первый пользователь, мне удалось заставить его работать, но это было непросто для меня.
Я полагаю, что многие люди не знакомы с этой IDE, поэтому я опубликую пошаговые инструкции в качестве базового учебника:
Загрузите и установите jGRASP версии 2.0.5_05 Beta.
Поскольку у меня установлено несколько JDK, по умолчанию был выбран JDK 10.0.2, поэтому первым делом я нашелспособ работы с JDK 11. Это можно сделать в Settings -> jGrasp Startup Settings
, где я могу указать путь к своему исполняемому файлу java
:
Затем я перезапустил jGrasp.Вы можете проверить, какой JDK IDE использует в Tools -> System Info -> Java Version
.
Открыть пример класса HelloFX.Я начал с самого простого образца из документов OpenJFX .Код можно найти здесь .
Build -> compile
, как и ожидалось, выдаст кучу ошибок, учитывая, что JavaFX больше не является частью JDK:
Следуя документации OpenJFX, нам нужно загрузить JavaFX SDK с здесь , а затем добавьте библиотеку в путь к классам.Перейдите к Settings -> PATH/CLASSPATH -> Workspace
, нажмите New и добавьте один за другим различные jar-файлы JavaFX из загруженной папки SDK / lib (не менее javafx-base.jar
, javafx-graphics.jar
и javafx-controls.jar
).
Build -> compile
должно работать сейчас.
Следующий шаг: Build -> Run
.Это терпит неудачу:
----jGRASP exec: java HelloFX
Error: JavaFX runtime components are missing, and are required to run this application
----jGRASP wedge: exit code for process is 1.
----jGRASP: operation complete.
Это ожидалось.Согласно документам, нам нужно установить аргументы module-path и add-modules.
- Первая попытка: использовать
Run arguments
.После установки:
--module-path /Users/<user>/Downloads/javafx-sdk-11.0.2/lib --add-modules javafx.controls
повторный запуск завершился неудачно с тем же сообщением об ошибке, что и выше, но с одним отличием в журнале консоли:
----jGRASP exec: java HelloFX --module-path /Users/<user>/Downloads/javafx-sdk-11.0.2/lib --add-modules javafx.controls
Что не так с этим!?Ну ... если вы попробуете это в командной строке, то это тоже не удастся, потому что порядок аргументов неправильный, аргументы vm должны идти до имени класса.
В заключение: Run arguments
не VM arguments
!
- Вторая попытка: Чтобы предоставить аргументы виртуальной машины, я нашел вариант, чтобы отредактировать
Settings -> Compiler settings -> Workspace
.По умолчанию используется jdk (integrated debugger) - generic
.Вы можете просмотреть его и увидеть, что для Run
он использует:
java %S -ea %S %<FLAGS2> %<MAIN_CLASS> %<ARGS>
Так что вместо ARGS
нам нужно найти способ установить FLAGS2
.
К счастью, рядом с вкладкой Environment
есть вкладка Flags/Args
, и там мы можем установить наши аргументы vm в FLAGS2
:
--module-path /Users/<user>/Downloads/javafx-sdk-11.0.2/lib --add-modules javafx.controls
- Примените, закройте диалоговое окно и
Build -> Run
класс, теперь он будет работать!
Если вы видите консольный журнал, он содержит именно ту команду, которую вы использовали бы при запуске из командной строки:
----jGRASP exec: java --module-path /Users/<user>/Downloads/javafx-sdk-11.0.2/lib --add-modules javafx.controls HelloFX
----jGRASP: operation complete.
Полагаю, что следующий шаг будет более сложнымпроект ...