Tools – JDK und JavaFX
1. Überblick JDK + JavaFX in Eclipse
Es gibt diesbezüglich einige Konfigurationsmöglichkeiten für die oben erwähnte Kombination.
Wesentlch dafür sind 2 Fakten:
-
In Java SE 7 Update 6 bis Java 10 war JavaFX Teil des JDK, seit Java 11 ist es ausgegliedert und als separate Bibliothek verfügbar.
-
Mit Java 9 wurde mit dem Modul-Konzept eine neue Gliederungsebene eingeführt und innerhalb des JDK auch umgesetzt.
Details folgen ...
Für das Entwickeln von JavaFX-Applikationen können im Prinzip zwei Herangehensweisen gewählt werden:
-
Nutzung eines OpenJDK-Build mit zusätzlich integriertem JavaFX (z.B. Zulu-Builds) – mit nachstehend beschriebenem Javadoc-Nachteil für IDEs (zumindest Eclipse)
-
Installation eines Standard-JDK und Installation eines separaten JavaFX und Konfigurieren von Eclipse in der später beschriebenen Art, was – soweit mir bekannt – nachteilsfrei ist.
2. Vorbereiten für übersichtliche Installation
Wenn nicht ein guter Grund besteht, ältere JDKs und/oder JREs weiterhin zu behalten, empfiehlt es sich, vor einer geplanten JDK-Installation alle bestehenden Java-Installationen zu entfernen – zuerst mit Windows-Bordmitteln, danach etwaig übrigbleibende manuelle Installationen.
Grund sind einerseits Sicherheitslücken alter Java-Installationen und zweitens verwirrende Konstellation beim Suchen von JDKs für die Entwicklung mit Eclipse.
Windows-Bordmittel: Rechtsklick auf Windows-Startbutton, im Popup-Menü Einstellungen wählen (oder per Linksklick, dann Zahnrad-Icon). Es öffnet sich das "Einstellungen"-Fenster, worin das Element "Apps" … zu selektieren ist. Im nun geöffneten Fenster "Apps und Features" im Suchfeld mit folgenden 3 Suchbegriffen bestehende Installationen suchen und deinstllieren: "JDK", "JRE", "Java".
Manuelle Kontrolle
Hinterher noch nachsehen, ob unter Programme
oder im eigenen Heimverzeichnis eine "Händische" Installation vorhanden ist und gegebenenfalls auch diese deinstallieren.
Nach Deinstallation aller gefundenen Java-Installationen cmd
(Eingabeaufforderung) starten und zur Kontrolle eingeben: java -version
. Hier sollte nun eine Fehlermeldung folgen, wenn keine erkannte Java-Installation mehr vorhanden ist.
3. Installations-Variante Zulu-Build mit integriertem JavaFX + JDK-Dokumentation
3.1. Überblick
Die schnellste und einfachste Installation (mit einem unten beschriebenen Nachteil in Zusammenhang mit diversen IDEs – z.B. Eclipse) bietet eine sehr gut betreute Variante der OpenJDK-Builds, die JavaFX bereits integriert enthält: Zulu-FX JDK.
Der Nachteil mit einigen IDEs (z.B. Eclipse) ist, dass die API-Dokumentation (Javadoc) direkt aus der IDE entweder nur für das JDK oder nur für JavaFX möglich ist. Das Problem wird abgemildert, da viele IDEs für Direkt-Hilfe bei vorhandenem Source-Code die benötigten Javadoc-Infos aus diesem extrahiert werden. Das gilt aber nicht für den häufigen Fall, dass die API-Doc wesentlich komfortabler offline im Web-Browser angesehen werden soll.
Das Argument mit der Einfachheit trifft allerdings nur dann in vollem Umfang zu, wenn eine MSI-Installationsdatei bereitsteht. Für JDK-FX-16 ist dies derzeit nicht der Fall und es wären einige zusätzliche Schritte nötig oder empfehlenswert:
-
Konfiguration der System-Environment-Variablen JAVA_HOME
-
Konfigurieren der System-Environment-Variablen PATH
-
JAR-Dateien per Doppelklick ausführbar machen
TODO: Details schreiben
Diese Integration von JavaFX in das JDK macht die ersten Schritte mit JavaFX deutlich unkomplizierter, da einerseits die Modularisierung beiseite gelassen werden kann, weiters die Eclipse-Konfiguration einfacher ist und außerdem die Installation eines separaten JAvaFX unterbleiben kann.
Das Unternehmen, das hinter Zulu steht heißt Azul Systems und ist eine bekannte Größe in der Java-Welt – auch eine der großen Beitragenden zum AdoptOpenJdk-Projekt.
Die Installation der API-Dok von JavaFX kann bei Bedarf unten nachgelesen werden
3.2. Download und Installation
Hier der direkte Link mit den passenden Selektionen (für Windows) – darin ganz nach unten scrollen:
Screenshot des Download-Formulars (noch für Version 15). Wichtig ist die Selektion des richtigen "Java Package: JDK FX ":

Im Bild zeigt die obere Selektionsleiste die vorgenommene (und hier änderbare) Auswahl von Java-Version, Betriebssystem, Architektur und Variante (mit/ohne integriertem JavaFX).
Rechts im Hauptbereich sind die beiden möglichen Installationspakete zu sehen.
Für JDK16 steht leider keine MSI-Datei zur verfügung, sondern nur ein ZIP-Archiv. In den meisten Fällen wäre das Installieren eines MSI-Paktets komfortabler - auch das Wieder-Entfernen geht damit weitgehend automatisch. Nur bei gezielter Selbstverwaltung der/mehrerer Java-Versionen ist die ZIP-Version vorzuziehen.
Details zur jeweiligen Installation sind nahe dem Download-Button abrufbar: "How to install?".
Bei Aufruf werden Instruktionen angezeigt. Ganz unten erscheint der Hinweis, dass die Installation auch in die Environment-Variable PATH eingetragen wird, d.h. (salopp) die Kommandos sind ohne volle Pfad-Angabe nutzbar (das CMD-Fenster darf erst NACH Abschluss der Installation geöffnet werden, damit der aktualisierte PATH wirksam ist). Auch die Verknüpfung der Datei-Endung ".jar" wird vorgenommen, womit der Start von Java-Applikations-JARs per Doppelklick möglich wird.
Auch hier ist es überlegenswert, alte JDKs und JREs zu vor dem Installieren der neuen Version zu entfernen, um unnötige Relikte loszuwerden. Ausnahme z.B. wenn man für mehrere Java-Versionen entwickeln möchte/muss oder wenn bestimmte Softwarepakete ältere Versionen benötigen.
Der Name im Installer ist ZuluFX JDK 15.xy. der vom Installer vorgeschlagene Pfad ist C:\Program Files\Zulu\zulu-15\ - vermutlich ein sinnvoller Platz, solange man den Namen Zulu mit Java in Verbindung behält. Die Installation verläuft im Normalfall ohne Komplikationen.
Zum Abschluss sollte auf der Kommandozeile (CMD) getestet werden, ob standardmäßig nun die soeben installierte Java-Version genutzt wird: CMD öffnen, "java -version" eintippen, mit [Return] bestätigen. Nun sollte eine mehrzeilige Ausgabe erfolgen, eine Zeile sollte ungefähr lauten: "OpenJDK Runtime Environment Zulu15.28+51-CA (build 15.0.1+9)".
4. Installations-Variante separate Installation OpenJDK-Build + JavaFX + jeweilige Dokumentation
4.1. Überblick
Achtung: NICHT das JDK von Oracle nutzen – sehr wohl aber die Oracle-DOKUMENTATION!
Die Oracle-Version des JDK hat (im Gegensatz zur Dokumentation) seit kurzem eine nicht-freie Lizenz, bietet aber außer u.U. für große Unternehmen keine Vorteile!
Empfehlenswert ist ein JDK z.B. von
-
AdoptOpenJdk: https://adoptopenjdk.net/releases.html?variant=openjdk16&jvmVariant=hotspot (eine der beiden JDKs, nicht JREs!)
-
Amazon Corretto: https://aws.amazon.com/de/corretto/
oder https://github.com/corretto/corretto-jdk/releases
Alle drei enthalten auch den kompletten Source-Code als ZIP-Datei in lib
-Verzeichnis.
Zusätzlich sinnvoll: Offline JDK API Dokumentation (Javadoc) von https://www.oracle.com/java/technologies/javase-jdk16-doc-downloads.html.
4.2. Download und Installation des JDK + Dokumentation
-
Herunterladen des passenden JDK von einer der oben genannten Stellen (bei Zulu die NICHT-FX-Version!). Am einfachsten ist die MSI-Installation (als einziges bzw. primäres JDK). Die ZIP-Version erfordert einige weitere manuelle Schritte:
-
Konfiguration der System-Environment-Variablen JAVA_HOME
-
Konfigurieren der System-Environment-Variablen PATH
-
JAR-Dateien per Doppelklick ausführbar machen
TODO: Details beschreiben
-
-
Herunterladen der Dokumentation von Oracle
4.3. Herunterladen und Installieren JavaFX + Dokumentation
Offizielle Website zu JavaFX ist nun https://openjfx.io/. Es lohnt sich, die Startseite kurz durchzuscrollen, da hier interessante Tools und Erweiterungen vorgestellt werden!
Von https://gluonhq.com/products/javafx/#latest sind 2 Dateien herunterzuladen (April 2021 aktuelle Version 16):
-
JavaFX Windows/Mac OS X/Linux x64 SDK
-
JavaFX Documentation
5. Problembeschreibung zu Kombi-Paketen JDK + JavaFX
Es gibt Organisationen bzw. Firmen (z.B. Zulu-Builds), die auch aktuelle JDKs mit JavaFX kombiniert bereitstellen, allerdings bieten sie keine kombinierten API-Doc (Javadoc) Pakete an.
Da Eclipse es nicht erlaubt, einem JAR-File mehr als ein API-Doc (Javadoc) "Paket" zuzuordnen, kann nur entweder das Standard-JDK- oder JavaFX-Paket verknüpft werden.
Dies hat zur Folge, dass zwar die Dokumentation direkt innerhalb von Eclipse funktioniert (hier wird die Dokumentation aus den JDK- bzw. sonstigen Paketen der bereitgestellte Quelltext direkt erzeugt), aber das oft wesentlich übersichtlichere direkte Öffnen (von der Eclipse-Javadoc-Ansicht) in einem Web-Browser erfordert eine "traditionelle" Bereitstellung und funkioniert daher nur entweder für JDK oder für JavaFX.
Daher wird hier im Weiteren (nach der Grundinstallation von Eclipse) ein bislang problemfei wirkender Ansatz beschrieben, der ein normales JDK mit einem separaten JavaFX kombiniert und keine extra Maßnahmen für JavaFX-Projekte erfordert.
6. Links
https://aws.amazon.com/de/corretto/ [Produktionsbereite Distribution des Open Java Development Kit (OpenJDK) für Amazon Corretto] … 27.5.2021, 17:29:36
Installation von Java 13 (OpenJDK 13) auf einem Windows 10 PC … 27.5.2021, 17:28:11
Installing Java on 64 bit Windows - HowToDoInJava … 27.5.2021, 17:39:55
Unable To Run .JAR Files in Windows 10? Here’s the Solution … 27.5.2021, 17:46:31