Brak JavaFX, Ubuntu 18.04

18

Mam Java 8 i Ubuntu 18.04. Używam NetBeans i kiedy próbowałem stworzyć jakiś program, nie można tego zrobić, ponieważ brakuje JavaFX.

Zainstalowałem Java JDK z NetBeans ze strony Oracle i pomyślałem, że wszystko jest zawarte, ale oczywiście nie sprawdziłem tego dobrze.

Co powinienem zrobić, co powinienem zainstalować? Nie jestem w tym dobry i nie wiem, czy problem dotyczy Ubuntu czy Java. :(

Maria
źródło
patrz także stackoverflow.com/questions/56166267/…
Wolfgang Fahl

Odpowiedzi:

18

W Ubuntu 16.04 i późniejszych domyślnych repozytoriach JavaFX jest pakowany jako osobny pakiet o nazwie openjfx. Aby zainstalować go w Ubuntu 18.04, otwórz terminal i wpisz:

sudo apt install openjdk-8-jdk openjfx

Sprawdź, czy JDK 8 jest wybrany jako domyślna wersja Java w Netbeans -> Narzędzia -> Opcje -> Java -> karta Nashorn -> kliknij przycisk Zarządzaj platformami -> kliknij przycisk Dodaj platformę -> kliknij przycisk opcji oznaczony Java Standard Edition -> kliknij przycisk Dalej -> przejdź do /usr/lib/jvm/java-8-openjdk-amd64i wybierz jako domyślną wersję Java.

Opcjonalnie możesz zainstalować openjdk-11-jdk zamiast lub obok openjdk-8-jdk. openjfx współpracuje zarówno z openjdk-8-jdk, jak i openjdk-11-jdk w Netbeans w Ubuntu 18.04. Korzystam z Netbeans 8.2 10.0 w Ubuntu 18.04.

Karel
źródło
Dzięki, twoje polecenia działają, ale nadal z moją biblioteką java.io dostaję błąd Exception in thread "main" java.lang.IllegalStateException: Toolkit not initialized... Nie wiem dlaczego
Maria
@Mara Przepraszam, znalazłem błąd, który wystąpił w moim kodzie JavaFX, ponieważ nie skopiowałem całego kodu do końca w Pastebin przy pierwszym przesłaniu. Pominąłem dwa nawiasy klamrowe na końcu, kiedy przesłałem go po raz pierwszy. Ponownie przesłałem kod tutaj . Nazwa mojego projektu JavaFX w Netbeans to HelloWorldFX.
karel
JavaFX działa dla mnie 18.04 dopiero po zainstalowaniu JDK 8 ORAZ zmianie zestawu SDK projektu na 8 (nie chce działać na SDK 10) w IntelliJ.
Linia
Musi to być problem ze ścieżkami JDK w IntelliJ, ponieważ JDK 8 i 11 działają razem w Netbeans w Ubuntu 18.04 z tym samym pakietem JavaFX dla obu z nich.
karel
Sprawdziłem cały dysk twardy, ale po zainstalowaniu openjfx nie mogę znaleźć dystrybucji javafx. nie ma go w / usr / lib / jvm / <jdk> / jre / lib / ext /, gdzie znalazłem go na innych urządzeniach, takich jak mój laptop z manjaro. : /
Niklas Vest
0

Myślę, że najprostszym sposobem jest zainstalowanie sdkman . Po zainstalowaniu sprawdź wszystkich dostępnych kandydatów:

$ sdk list java

które pokażą szeroką gamę opcji. Możesz wybrać jedną z FXsufiksem. W moim przypadku widzę coś takiego:

 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       

Możesz więc zainstalować go za pomocą tego polecenia:

$ sdk install java 11.0.2-zulufx   

Lub,

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

I jesteś gotowy, aby iść! Mam nadzieję, że to pomoże! :)

Qazi Fahim Farhan
źródło
0

Ten problem można rozwiązać, dodając ścieżkę i moduły openjfx jako argumenty podczas uruchamiania aplikacji javafx, już opublikowałem rozwiązanie pod tym linkiem .
Powodzenia
Lotfi

Lotfi Hocini
źródło