Upgrade von Spring Boot 3.5 auf 4

Wir aktualisieren Services von Spring Boot 3.5 auf Spring Boot 4. Der Open-Source-Support für Spring Boot 3.5 endete am 30. Juni 2026. Der Wechsel bringt Spring Framework 7, Jakarta EE 11 und Jackson 3, auf Java 21 oder 25 LTS. OpenRewrite-Rezepte erledigen die mechanischen Änderungen; Ihre Tests sichern den Rest ab.

Die Aufgabe.

Der Open-Source-Support für Spring Boot 3.5 endete am 30. Juni 2026. Das letzte Open-Source-Release ist 3.5.16. Ihre Services laufen weiter, aber spätere Fixes gibt es nur mit kommerziellem Support.

Der Open-Source-Support für Spring Boot 4.0 endet am 31. Dezember 2026. Deshalb ist das Ziel die Release-Linie 4.1, nicht 4.0. Services, die noch auf Spring Boot 2 laufen, haben einen längeren Weg vor sich: zuerst von javax auf jakarta.

Was wir tun.

  1. Bestandsaufnahme

    Wir erfassen jeden Service mit seiner Version von Spring Boot, seiner Java-Version und seinen Bibliotheken. Services auf Spring Boot 2 bekommen einen eigenen Weg.

  2. Abhängigkeiten

    Das Parent-POM wechselt auf Spring Boot 4.1, das Spring Framework 7 mitbringt. Wir prüfen für jede Bibliothek, ob es ein Release gibt, das diese Version unterstützt.

  3. Jackson 3

    Spring Boot 4 wechselt auf Jackson 3. Wir finden die eigenen Serializer, Module und Einstellungen, die sich ändern müssen.

  4. Jakarta EE 11

    Spring Boot 4 läuft auf Jakarta Servlet 6.1, einem Teil von Jakarta EE 11. Bei Services auf Spring Boot 2 wechseln die javax-Imports zuerst auf jakarta.

  5. OpenRewrite

    OpenRewrite-Rezepte ändern Imports, Properties und Build-Dateien in der gesamten Codebasis. Wir prüfen jede Änderung und führen Ihre Tests aus.

  6. Java 21 oder 25

    Spring Boot 4 braucht Java 17 oder neuer. Wir bringen Services im selben Plan auf Java 21 oder 25 LTS, oder als nächsten Schritt.

Das Parent-POM, von 3.5 auf 4.1
 <parent>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-parent</artifactId>
-  <version>3.5.16</version>
+  <version>4.1.1</version>
 </parent>
 <properties>
-  <java.version>17</java.version>
+  <java.version>25</java.version>
 </properties>

Scrollen Sie den Code seitlich, um jede Zeile zu lesen.

Schematisch: der Parent von Spring Boot und die Java-Version in einem Maven-Build. Spring Framework 7, Jakarta EE 11 und Jackson 3 kommen mit dem neuen Parent; die Codeänderungen, die sie auslösen, folgen danach. Legen Sie am Tag Ihres Upgrades das neueste Patch-Release von 4.1 fest.

Typische Projekte.

  • Upgrade-Bewertung

    Wir erfassen Ihre Services, Versionen und Bibliotheken. Sie erhalten eine schriftliche Bewertung mit der Reihenfolge der Upgrades.

  • Upgrade Service für Service

    Die Services wechseln in kurzen Inkrementen. Jedes Inkrement endet mit einem getesteten Release.

  • Upgrade mit Ihrem Team

    Wir aktualisieren die ersten Services mit Ihren Ingenieuren und schreiben die Schritte auf. Ihr Team migriert den Rest, mit unserem Review.

Passt das zu Ihnen?

Passt gut

  • Sie haben Services auf Spring Boot 3.5 oder noch auf Spring Boot 2.
  • Sie haben Tests oder möchten sie vor dem Upgrade einführen.
  • Ihr Team verantwortet die Services nach dem Upgrade.

Passt nicht

  • Sie möchten die Version anheben, ohne Ihre Tests auszuführen.
  • Sie erwarten, dass OpenRewrite das Upgrade ohne Review abschließt.
  • Sie suchen Personalgestellung, ohne technische Leitung auf Ihrer Seite.

Versionen und Termine.

Aus den veröffentlichten Seiten der Hersteller, geprüft am 19. Oktober 2026.

Spring Boot 4 setzt Spring Framework 7 und mindestens Java 17 voraus und wechselt auf Jakarta Servlet 6.1 (Jakarta EE 11) und Jackson 3.

Der Wechsel von javax auf jakarta kam mit Spring Boot 3; hier betrifft er daher nur Services, die von Spring Boot 2 kommen.

Die aktuelle Release-Linie ist 4.1; das letzte Open-Source-Release von 3.5 ist 3.5.16.

  • Nächster

    31. Dezember 2026

    Spring Boot 4.0

    Spring Boot 4.0 verlässt den Open-Source-Support; die aktuelle Linie ist 4.1.

  • 30. Juni 2026 Beendet

    Spring Boot 3.5 hat den Open-Source-Support verlassen; das letzte Open-Source-Release ist 3.5.16.

Fragen.

Auf welche Versionen von Java und Spring Boot wechseln Sie?

Wir bringen Services auf Spring Boot 4 mit Java 21 oder 25 LTS. Wir planen den Schritt auf Spring Framework 7 und Jakarta EE 11 und, bei Services auf Spring Boot 2, den Wechsel von javax auf Jakarta EE, die Updates der Abhängigkeiten und die Tests. Der Open-Source-Support für Spring Boot 3.5 endete am 30. Juni 2026.

Müssen wir noch von javax auf jakarta wechseln?

Nur Services, die von Spring Boot 2 kommen, brauchen noch den Wechsel von javax auf jakarta. Dieser Wechsel kam mit Spring Boot 3, daher nutzt ein Service auf 3.5 bereits jakarta-Packages. Sein Weg zu Spring Boot 4 führt über Spring Framework 7, Jakarta EE 11 und Jackson 3.

Sollen wir Spring Boot 4.0 oder 4.1 als Ziel wählen?

Unser Ziel ist Spring Boot 4.1, die aktuelle Release-Linie, weil der Open-Source-Support für Spring Boot 4.0 am 31. Dezember 2026 endet.

Was macht OpenRewrite beim Upgrade?

OpenRewrite wendet Rezepte an, die Imports, Properties und Build-Dateien in einer gesamten Codebasis ändern. Es erledigt den mechanischen Teil; die Tests und ein Review fangen ab, was es nicht kann.

Funktionieren unsere Services nach dem 30. Juni 2026 nicht mehr?

Ihre Services auf Spring Boot 3.5 laufen nach dem 30. Juni 2026 weiter: An diesem Tag endete der Open-Source-Support, nicht die Software. Fixes nach 3.5.16 gibt es nur mit kommerziellem Support.

Auf welcher Version sind Sie?

Nennen Sie uns die Plattform, die Version und was sich ändern muss. Wir antworten mit Fragen oder einem Vorschlag für den nächsten Schritt.

Ihr Upgrade planen