Skip to content

Upgrade Spring Boot 2.7 to 3.2 and migrate to Jakarta EE#3165

Closed
singhularity wants to merge 1 commit intoalibaba:masterfrom
singhularity:upgrade/spring-boot-3.2
Closed

Upgrade Spring Boot 2.7 to 3.2 and migrate to Jakarta EE#3165
singhularity wants to merge 1 commit intoalibaba:masterfrom
singhularity:upgrade/spring-boot-3.2

Conversation

@singhularity
Copy link
Copy Markdown

Purpose of the pull request

Spring Boot 2.7.x reached end of life in November 2023. This PR upgrades the project to Spring Boot 3.2, which brings Jakarta EE 10, Spring Framework 6, and Spring Security 6. Java 17 is now the minimum version (required by Spring Boot 3.x).

Brief change log

  • Bump spring-boot.version from 2.7.18 to 3.2.0
  • Bump maven.compiler.source/target from 8 to 17
  • Migrate javax.servlet imports to jakarta.servlet (tunnel-server)
  • Migrate javax.activation to jakarta.activation (grpc-web-proxy)
  • Migrate WebSecurityConfigurerAdapter to SecurityFilterChain bean with lambda-style DSL (Spring Security 6)
  • Add javax.annotation-api dependency for protobuf-generated code in arthas-grpc-server (gRPC codegen still emits javax.annotation)
  • Add Lombok annotation processor configuration to maven-compiler-plugin (required for Java 17+)
  • Add lombok.version property to parent POM

Verify this pull request

This pull request is already covered by existing tests.

All 23 modules compile successfully:

mvn clean install -DskipTests  # BUILD SUCCESS

Video Walkthrough

https://github.com/user-attachments/assets/placeholder

https://github.com/singhularity/arthas/releases/download/untagged-611ce048151080371ddf/prexplainer-tour-2026-03-31T19-11-03.mp4

Created using PRExplainer

Spring Boot 2.7.x reached end of life in November 2023. This upgrades
the project to Spring Boot 3.2, which brings Jakarta EE 10, Spring
Framework 6, and requires Java 17 as the minimum version.

Changes:

- Bump spring-boot.version from 2.7.18 to 3.2.0
- Bump maven.compiler.source/target from 1.8 to 17
- Migrate javax.servlet imports to jakarta.servlet (tunnel-server)
- Migrate javax.activation to jakarta.activation (grpc-web-proxy)
- Migrate WebSecurityConfigurerAdapter to SecurityFilterChain bean
  with the new lambda-style DSL (Spring Security 6)
- Add javax.annotation-api dependency for protobuf-generated code
  in arthas-grpc-server (gRPC codegen still uses javax.annotation)
- Add Lombok annotation processor configuration to maven-compiler-plugin
  (required for annotation processing in Java 17+)
- Update Lombok version property and add it to parent POM

All 23 modules compile successfully with `mvn clean install -DskipTests`.
@CLAassistant
Copy link
Copy Markdown

CLAassistant commented Mar 31, 2026

CLA assistant check
All committers have signed the CLA.

@lzysuqianqiu
Copy link
Copy Markdown

Spring Boot 3.2.X不维护了,要升级就最少升级到维护的Spring Boot版本如3.5.X

@hengyunabc
Copy link
Copy Markdown
Collaborator

The changes in this PR are overly complex, so the implementation has been replaced by the following two PRs:

Thanks for the contribution.

@hengyunabc hengyunabc closed this Apr 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants