Neue Hauptversion Spring Shell 4.0 markiert Meilenstein

Das Release nutzt das Open-Source-Projekt JSpecify für Null Safety und gestaltet die Architektur modularer, um Anpassungen zu vereinfachen.

vorlesen Druckansicht 4 Kommentare lesen
Wiese

(Bild: LeManna / Shutterstock.com)

Lesezeit: 2 Min.
Inhaltsverzeichnis
close notice

This article is also available in English. It was translated with technical assistance and editorially reviewed before publication.

Das Spring-Team hat die neue Major-Version Spring Shell 4.0.0 veröffentlicht. Sie ist auf dem zentralen Maven-Repository Maven Central verfügbar, soll einen signifikanten Meilenstein für die Spring Shell bedeuten und ist mit den aktuellen Spring-Framework- und Spring-Boot-Versionen kompatibel. Updates gibt es unter anderem für die Architektur, Null Safety und das Erstellen von Befehlen.

Version 4.0 der Spring Shell basiert auf dem Spring Framework 7, das im November 2025 erschien. Das quelloffene Java-Framework brachte ein neues Konzept für Null Safety: Ebenso wie das Framework nutzt die Spring Shell nun das Open-Source-Projekt JSpecify für Null Safety, was Fehler durch den Umgang mit Null-Pointern verhindern soll.

Zudem bringt die neue Spring-Shell-Version ein überarbeitetes Befehlsmodell, um das Erstellen und Verwalten von Befehlen zu vereinfachen. Eine stärker modular aufgebaute Architektur soll der benutzerdefinierten Anpassung sowie Erweiterung der Shell zugutekommen. Die Dokumentation und Beispiele wurden ebenfalls aktualisiert, um insbesondere beim Einstieg in die Arbeit mit der Spring Shell zu helfen.

Im Projekt-Wiki findet sich ein Migrationsguide. Dabei ist zu beachten, dass Anwendungen vor der Migration auf Spring Shell 4 zunächst auf die neueste 3.4.x-Version aktualisiert werden sollten.

Zu den Moduländerungen zählt, dass das spring-shell-core-Modul nicht länger auf Spring Boot und JLine angewiesen ist. Die Module spring-shell-standard und spring-shell-standard-commands wurden in das spring-shell-core-Modul integriert.

In Spring Shell 3 als deprecated (veraltet) markierte APIs und Annotationen sind entfallen, darunter Legacy-Annotationen wie ShellComponent und ShellMethod.

Mit der Spring Shell können Entwicklerinnen und Entwickler eine Spring-basierte Shell-Anwendung erstellen. Wie das Spring-Team ausführt, kann eine solche Kommandozeilenanwendung hilfreich sein, um mit der REST-API eines Projekts zu interagieren oder mit lokalen Dateninhalten zu arbeiten. Weitere Informationen – inklusive Beispielanwendungen und Tutorials – bietet das GitHub-Repository.

(mai)