Write once, run anywhere? Spätestens seit der Einführung von Docker, GraalVM und nativer Images wird dieses Paradigma zunehmend in Frage gestellt. Anstatt universellen Bytecode für eine beliebige JVM auszuliefern, werden moderne Java-Applikationen für die Cloud gerne zu nativen Binaries kompiliert und betriebsfertig in Container-Images verpackt. Was zunächst wie ein widersinniger Verlust der so häufig beschworenen Portabilität aussieht, bringt nicht selten eine erhebliche Verbesserung der Performance mit sich.

Im Rahmen dieses Vortrages werfen wir nicht nur einen Blick auf GraalVM und native Images, sondern betrachten auch das gerade erst veröffentlichte Spring Boot 3 (ehemals Spring Native). Abschließend wenden wir uns der Frage zu, für welche Einsatzszenarien sich native Images eignen und welche Limitierungen es zu beachten gilt.