JavaFX отсутствует, Ubuntu 18.04


18

У меня есть Java 8 и Ubuntu 18.04. Я использую NetBeans, и когда я пытался создать какую-то программу, это не могло быть сделано, потому что JavaFX отсутствует.

Я установил Java JDK с NetBeans с сайта Oracle и подумал, что все включено, но, очевидно, я не проверял это хорошо.

Что я должен делать, что я должен установить? Я не очень хорош в этом и не знаю, есть ли проблема с Ubuntu или Java. :(


Ответы:


18

В репозиториях Ubuntu 16.04 и более поздних по умолчанию JavaFX упакован как отдельный пакет с именем openjfx. Чтобы установить его в Ubuntu 18.04, откройте терминал и введите:

sudo apt install openjdk-8-jdk openjfx

Убедитесь, что JDK 8 выбран в качестве версии Java по умолчанию в Netbeans -> Сервис -> Параметры -> Java -> вкладка Nashorn -> нажмите кнопку « Управление платформами» -> нажмите кнопку « Добавить платформу» -> нажмите переключатель с меткой Java Standard Edition -> нажмите кнопку Далее -> найдите /usr/lib/jvm/java-8-openjdk-amd64и выберите ее в качестве версии Java по умолчанию.

При желании вы можете установить openjdk-11-jdk вместо openjdk-8-jdk или рядом с ним. openjfx работает как с openjdk-8-jdk, так и с openjdk-11-jdk в Netbeans в Ubuntu 18.04. Я использую Netbeans 8.2 10.0 в Ubuntu 18.04.


Спасибо, ваши команды работают, но все еще с моей библиотекой java.io я получаю сообщение об ошибке Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized... Я не знаю, почему
Мария

@Mara Извините, я обнаружил, что вы получили ошибку в моем коде JavaFX, потому что я не копировал весь код до конца в Pastebin при первой загрузке. Я пропустил две фигурные скобки в конце, когда впервые загрузил их. Я снова загрузил код здесь . Имя моего проекта JavaFX в Netbeans - HelloWorldFX.
Карел

JavaFX работает для меня 18.04 только после установки JDK 8 и изменения SDK проекта на 8 (не хочет работать с SDK 10) в IntelliJ.
Линия

Это должно быть проблемой с путями JDK в IntelliJ, потому что JDK 8 и 11 работают вместе друг с другом в Netbeans в Ubuntu 18.04 с одинаковым пакетом JavaFX для них обоих.
Карел

Я проверил весь свой жесткий диск, но не могу найти дистрибутив javafx после установки openjfx. он не находится в / usr / lib / jvm / <jdk> / jre / lib / ext /, где я обнаружил, что он находится на других устройствах, таких как мой ноутбук с Manjaro. : /
Никлас Вест

0

Я думаю, что самый простой способ - это установить sdkman . После установки проверьте все доступные кандидаты:

$ sdk list java

который покажет большое разнообразие вариантов. Вы можете выбрать один с FXсуффиксом. В моем случае я вижу что-то вроде этого:

 Azul ZuluFX   |     | 11.0.2       | zulufx  |            | 11.0.2-zulufx       
               |     | 8.0.202      | zulufx  |            | 8.0.202-zulufx      
 BellSoft      |     | 12.0.2       | librca  |            | 12.0.2-librca       
               |     | 11.0.4       | librca  |            | 11.0.4-librca       

Итак, вы можете установить его с помощью этой команды:

$ sdk install java 11.0.2-zulufx   

Или,

$ sdk install java 8.0.202-zulufx # if you want java 8

И тебе хорошо идти! Надеюсь, это поможет! :)


0

Эту проблему можно исправить, добавив путь и модули openjfx в качестве аргументов при запуске приложения javafx, решение о котором я уже разместил по этой ссылке .
Удачи,
Лотфи

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.