Skip to content

Spring Boot Migrator (SBM) is a tool for automated code migrations to upgrade or migrate to Spring Boot

License

Notifications You must be signed in to change notification settings

ijusti/spring-boot-migrator

 
 

Repository files navigation

Spring Boot Migrator (SBM)

Spring Boot Migrator (SBM) aims to help developers upgrade or migrate to Spring Boot by providing recipes for automated migrations.

How SBM works

Spring Boot Migrator uses and is compatible with OpenRewrite, a powerful mass refactoring ecosystem for Java and other source code.

Spring Boot Migrator offers a CLI to run recipes to migrate or upgrade a given application to Spring Boot. For developing new and custom recipes, SBM provides an opinionated API compatible with OpenRewrite recipes and a set of specialized resource representations to simplify recipe development for Spring Boot.

Scan application

A given codebase is scanned and a set of recipes gets evaluated against the codebase.

scan

Apply a recipe

The list of applicable recipes is displayed and recipes can be selected from the list to be run against the codebase.
The recipes either apply automated migrations or guide users on their migration journey.

apply

Getting started

  • Download the latest release from here: Spring Boot Migrator Releases

  • Start the application: java -jar spring-boot-migrator.jar

  • In the CLI start by scanning the application scan <path-to-application>

  • From the list of applicable recipes select the one you want to apply,
    e.g.: apply initialize-spring-boot-migration
    Spring Boot Migrator will now apply the migrations defined in the recipe to the codebase.

  • To get help when using SBM use the help command

Note
When using Windows you must either escape \ or use / as path separator, e.g. C:\\my\\app or C:/my/app
Note
The OpenRewrite rewrite-java-11 module uses JDK internals and thus requires the project to run with JDK 11.

Building from source

  • Clone the repository

  • Change into root dir

  • Run mvn clean install

  • Find the jar in applications/spring-shell/spring-boot-migrator.jar

Warning
Some integration tests use Docker so you’ll need Docker to run them.
You can pass the -DskipTests flag to the mvn command to ignore tests.

Documentation

Contributing

If you have not previously done so, please sign the Contributor License Agreement. You will be reminded automatically when you submit the pull request.

All contributions are welcome.

Please refer to the CONTRIBUTING.adoc for more details.

This project requires Java 11.

About

Spring Boot Migrator (SBM) is a tool for automated code migrations to upgrade or migrate to Spring Boot

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Languages

  • Java 98.4%
  • HTML 1.1%
  • Less 0.3%
  • FreeMarker 0.2%
  • CSS 0.0%
  • XSLT 0.0%