Application Advisor is a VMware Tanzu Spring capability for continuously and incrementally upgrading Spring dependencies in all your Git repositories.
Application Advisor creates an upgrade pull request every time it detects that there is an opportunity to upgrade the dependencies of your Git repository.
Application Advisor is an upgrade orchestrator that prevents stale or invalid pull requests with automatic upgrades caused by dependency conflicts. Application Advisor ensures that upgrades are applied in the right order across your private repositories to prevent dependency conflicts.
In this topic
- How Application Advisor works
- What Spring applications can be upgraded
- Further reading
- How to start using Application Advisor
How Application Advisor works
Application Advisor is a native CLI currently available on Linux, MacOS, and Windows. This CLI is responsible for:
- Generating the dependency tree and the build tool versions of a Git repository.
- Computing the upgrade plan, which is the list of Spring dependencies or tools that must be upgraded together (using OpenRewrite recipes) to the next release.
- Running the refactors that apply the corresponding dependency version changes and Java API upgrades, if needed, using OpenRewrite recipes.
- Creating pull requests with the refactors. The CLI needs a Git access token with write access to the repository.
It is assumed that the CLI is integrated into the CI/CD environment so that the Git repositories are continuously analyzed and upgraded to the next version, if necessary. The CI/CD environment is already configured to have access to internal Maven repositories, and to be able to resolve all the dependencies and compile the sources.

What Spring applications can be upgraded
Application Advisor can upgrade any Spring (Framework or Boot) application or component that can be built/compiled via Maven (using a pom.xml file) or Gradle (using a build.gradle file).
Application Advisor supports upgrades from Spring Boot 1.0.x and Spring Framework 2.0.x until the latest and greatest versions. However, the most complete upgrades are from applications using Spring Boot 2.7.x or Spring Framework 5.8.x and beyond.
For every generation of Spring Boot 3.x, Application Advisor is gradually offering 100% upgrade coverage for API deprecations and breaking changes of Spring Boot, Spring Framework, Spring Security, Spring Data and Spring Integration. Application Advisor will also upgrade the rest of Spring projects dependencies, but is not including additional Java changes.
Third party OSS dependencies whose Java APIs are heavily impacted with the Spring Boot upgrade (e.g. Jakarta, Springdoc, Apache Http Client) are also individually selected and updated with enterprise recipes.
Application Advisor upgrades are tested and supported for Java code, only. However, since Application Advisor is built on top of OpenRewrite, you can use it for Kotlin projects, but this is unsupported and experimental functionality.
Further reading
For more information about Application Advisor, see:
How to start using Application Advisor
To start using Application Advisor, see Install and configure the Application Advisor CLI.
Content feedback and comments