Nach der Version von Java 8 ist imho ein ziemliches Chaos ausgebrochen. JavaFX wurde ausgegliedert und ist nun eine eigenständige Anwendung. Zudem ist Java 11 zwar eine LTS-Version, aber sie ist nur für zahlende Kunden verfügbar. Will man Java weiterhin kostenlos nutzen, bleibt nur noch auf das von der Java-Community gewartete Java-Release auf OpenJDK-Basis auszuweichen. Unter Ubuntu kann man OpenJDK 11 und JavaFX zwar installieren, hat aber mit einigen Hürden zu kämpfen.
Update [07/2019]:
Ubuntu 18.xx installiert mit dem JavaJRE inzwischen die Version 11.0.3. Die beschriebene Installation für ZuluFX ist jedoch weiterhin aktuell.
Ubuntu installiert Version 10 anstelle von 11
Es fängt damit an, dass in Ubuntu 18.xx sudo apt-get install openjdk-11-jdk nicht die Version OpenJDK11, sondern die Version OpenJDK 10 installiert, was man mit java -version einfach prüfen kann.
Um OpenJDK 11 zu installieren, muss man das ppa: von OpenJDK einbinden und darüber installieren.
:~$ sudo apt update
:~$ sudo apt install -y openjdk-11-jdk
Dort kann man nun JavaFX z.B. von dieser -> Seite einbinden.
Komplettpaket ZuluFX
Alternativ und von mir bevorzugt kann man ZuluFX von Azul Systems verwenden, das man -> hier herunterladen kann. Das tar-File entpackt man z.B. in den Pfad /usr/lib/jvm/zuluFX (Die Unterverzeichnisse muss man anlegen bzw. umbenennen). Ich gehe hier davon aus, dass das heruntergeladene Archiv im Download-Verzeichnis des Benutzers liegt.
:~$ sudo tar ~/Downloads/xvzf zulu11.2.5-ca-fx-jdk11.0.1-linux_x64.tar.gz
Das Verzeichnis benenne ich einfach um, so dass die Filestruktur unter /usr/lib/jvm/zuluFX liegt. Nun muss Ubuntu noch darüber informiert werden, wo Java zu finden ist, indem man die Pfade erweitert.
Der Pfad wird in der PATH-Zeile hinten anhgehängt (Doppelpunkt beachten!) und die Systemvariable JAVA_HOME wird angefügt.
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/lib/jvm/zuluFX/bin" JAVA_HOME="/usr/lib/jvm/zuluFX"
Jetzt wird Ubuntu über die neue Java-Version informiert.
:~$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/zuluFX/bin/javac" 0
:~$ sudo update-alternatives --set java /usr/lib/jvm/zuluFX/bin/java
:~$ sudo update-alternatives --set javac /usr/lib/jvm/zuluFX/bin/javac
Das Wechseln der Java-Version geht übrigens ganz einfach mit
Version ok?
Nach einem erneuten Login kann man die Version mit
prüfen. Die Ausgabe sollte nun lauten:
openjdk version "11.0.1" 2018-10-16 LTS OpenJDK Runtime Environment Zulu11.2+5-CA (build 11.0.1+13-LTS) OpenJDK 64-Bit Server VM Zulu11.2+5-CA (build 11.0.1+13-LTS, mixed mode)
Permission denied?
Da immer wieder der Fehler gemacht wird, dass „normale“ Systemarbeiten als root ausgeführt werden und dann festgestellt wird, dass die Dateirechte nicht korrekt gesetzt sind, hier noch die Korrektur, falls man auf die Versionsabfrage ein Permission denied bekommt:
:~$ sudo chmod a+x /usr/bin/javac
:~$ sudo chmod a+x /usr/bin/javaws
:~$ sudo chown -R root:root /usr/lib/jvm/zuluFX
Ähnliche Beiträge:
-> Javascript in Acrobat PDF
1 Comment