© Excellent backgrounds/Shutterstock.com
Tutorial zur Erstellung ausführbarer JavaFX-Anwendungen

JavaFX - von der Klasse zur EXE


JavaFX bietet als neues UI-Toolkit für Java eine sehr moderne UI-Technologie, mit ­deren Hilfe Oberflächen effizient entwickelt werden können. Aber wie sieht das für den Endanwender aus? Was muss er tun, um JavaFX-Programme bei sich zum Laufen zu bringen und wie viel Spezialwissen über die Java-Welt benötigt er? Muss er Java überhaupt kennen? Dieses Tutorial zeigt anhand einer Beispielanwendung, welche Möglichkeiten existieren, um eine JavaFX-Anwendung auslieferbar vorzubereiten und beim Kunden in Betrieb zu nehmen.

JavaFX and Leap Motion Controller

Als Benutzer einer Software mögen wir es heutzutage gern bequem. Wir sind es gewohnt, durch einen Doppelklick auf eine Verknüpfung Anwendungen zu starten und wollen möglichst keine Einstellungen vornehmen, weder an der Anwendung noch an unserem System. Wir wollen bitte auch keine zusätzliche Software installieren und konfigurieren müssen. Für uns Java-Entwickler stellt sich also nun die Frage, wie wir dem Wunsch unserer Kunden nachkommen können, schließlich sind wir sehr stolz auf die Plattformunabhängigkeit unserer Welt. Wir sind jedoch gezwungen, mit jar-Dateien zu arbeiten, anstatt mit den für den Endnutzer bekannten direkt ausführbaren exe-Dateien oder auch dmg-Files.

Artikelserie

Teil 1: Von der Klasse zur EXE: JavaFX-Anwendungen nativ packen

Teil 2: Auslieferung und Installation nativer JavaFX-Anwendungen

Das Beispiel: Timer

Um die verschiedenen Möglichkeiten und Ausbaustufen für auslieferbare JavaFX-Anwendungen anschaulich zu beschreiben, benötigen wir ein Anschauungsobjekt. Hierzu benutzen wir eine kleine Applikation namens Timer, siehe Abbildung 1. Dieser Timer hat die Funktion einer Eieruhr. Man kann eine Zeit einstellen (Minuten und Sekunden) und nach einem Klick auf Start geht der Countdown los. Ein Klick auf Stop beendet den Countdown an der aktuellen Zeit. Ein erneuter Klick auf Start lässt ihn weiterlaufen.

israel_abb1.tif_fmt1.jpgAbb. 1: Screenshot Timer

Gebaut wurde diese Minianwendung mithilfe des mvvmFX-­Frameworks [1], das eine Anwendungsstrukturierung nach Model View ViewModel zulässt und auch Dependency-Injection-Unterstützung in Form von CDI Weld und Google Guice [2] mitbringt. Das erleichtert uns den Einstieg in die Anwendung und bringt uns gleich eine demonstrative Abhängigkeit zu einem Drittprojekt. Die Timer-Anwendung ist als Projekt auf GitHub verfügbar [3]. Um das Projekt nutzen zu können, benötigt man Java 7 (mindestens in Version 7 Update 6), Maven, Git sowie einen GitHub-Account. Hat man die benöt...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang