JavaFX 2.2 soll native Pakete erlauben

Mit der kommenden Version 2.2 sollen sich JavaFX-Anwendungen als native App paketieren lassen. Anwender könnten solche Programme direkt installieren, ohne vorher Java auf ihrem System einrichten zu müssen.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Robert Lippert

Oracle will mit der kommenden Version seiner RIA-Technik JavaFX 2.2 erstmals auch eine native Paketierung ermöglichen. Verantwortlich für den Prozess ist "Ensemble", ein Wrapper für JavaFX-Anwendungen, der letztlich plattformspezifische Bundles erstellt.

Diese Bundles enthalten – neben dem Anwendungscode und anderen Ressourcen – auch die erforderlichen Metadaten wie Programm-Icons, einen nativen Launcher und vor allem die erforderliche Java- und JavaFX-Laufzeitumgebung. Letzteres ist zwar der entscheidende, aber auch der kritische Punkt des Ansatzes, wie aus einem Artikel von Igor Nekrestyanov, Software Engineer für Oracle, hervorgeht: Der Anwender muss die erforderliche Laufzeitumgebung nicht mehr selbst installieren und kann die so paketierte JavaFX-App direkt ausführen.

Auf der anderen Seite müssen Entwickler aber auch spürbar größere Dateien ausliefern (da die Runtimes jeweils neu enthalten sind). Ein weiterer Nachteil ist es, dass eine native Applikation (derzeit) nur unter dem jeweiligen Zielsystem paketiert werden kann – wer Mac OS X, Windows und Linux unterstützen will, muss seine JavaFX-Anwendung auf jedem einzelnen dieser Systeme bauen.

Ensemble verspricht jedoch auch Vorteile. Auch ohne Administrator-Rechte sei ein Deployment auf "frischen" Systemen möglich, Anwender müssten sich über die Kompatibilität zwischen Anwendung und Laufzeitumgebung keine Gedanken mehr machen und der systeminterne Prozessname trägt mit dem neuen Modell den Namen der Anwendung, statt wie bisher beispielsweise nur "java.exe" unter Windows.

Entwickler können die neue Funktion mit dem JDK 7u6 Beta (ab Build-Version 14) bereits ausprobieren. Das JavaFX-Team hofft, die Technik künftig auch für Java-SE-Anwendungen wie Swing und AWT anbieten zu können. (rl)