Migrate to Spring Boot 4
Migrates a jEAP application to Spring Boot 4.
Usage
Navigate to the root directory of your jEAP project and run:
jeap migrate spring-boot-4
What It Does
The migration performs the following steps in order:
-
Update Maven Wrapper — updates the Maven Wrapper (
.mvn/wrapper/maven-wrapper.properties) to the Maven version expected by updated maven plugins so that all subsequent Maven-based steps run with the correct Maven version (skipped automatically if the project does not use the Maven Wrapper) -
Prepare pom.xml for Spring Boot 4 parent upgrade — prepares all
pom.xmlfiles before the parent version switch. This step:- Sets the jEAP parent version in the root
pom.xmlto the target Spring Boot 4 version (jeap-spring-boot-parentorjeap-internal-spring-boot-parent, depending on which is used) - Adds explicit
<dependencyManagement>entries for dependencies that are no longer managed by the new parent BOMs - Renames or replaces dependencies whose artifact coordinates changed in Spring Boot 4
- Sets the jEAP parent version in the root
-
Update jEAP Parent — updates the jEAP parent POM to the latest version using Maven's versions plugin
-
Update jEAP Dependencies — updates all jEAP dependency versions to the latest releases. Only dependencies with an explicitly declared version in the project are updated — dependencies managed by the parent POM are not affected.
-
Run jEAP OpenRewrite Spring Boot 4 Recipe to automatically migrate Spring Boot application code, configuration, and dependencies
-
Replace secrets location prefix in Spring properties — replaces
aws-secretsmanager:withjeap-aws-secretsmanager:in all Springapplication.yml/application.propertiesfiles -
Verify migration with Maven install — runs
mvn installto confirm the migrated project builds and all tests pass
Prerequisites
- The project must be a Maven-based jEAP application
- For
--auto-fix-errors-via-copilot-cli, the CLI container must be able to run:gh auth statuscopilot