chore: upgrade Spring Boot 3.4.5 -> 4.0.0 with compiler and SecurityConfig fixes

- Move maven-compiler-plugin from pluginManagement to plugins for proper release 17 inheritance
- Remove deprecated UserDetailsServiceAutoConfiguration exclude (removed in Boot 4.0)
- Switch MyBatis-Plus to boot4-starter
This commit is contained in:
2026-04-28 18:39:54 +08:00
parent 30cd1ec51a
commit 6b3f1bdab5
4 changed files with 18 additions and 17 deletions
+1 -1
View File
@@ -67,7 +67,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId> <artifactId>mybatis-plus-spring-boot4-starter</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
@@ -3,10 +3,9 @@ package cn.craftlabs.platform.api;
import org.mybatis.spring.annotation.MapperScan; import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.security.servlet.UserDetailsServiceAutoConfiguration;
import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity;
@SpringBootApplication(exclude = UserDetailsServiceAutoConfiguration.class) @SpringBootApplication
@EnableMethodSecurity @EnableMethodSecurity
@MapperScan("cn.craftlabs.platform.api.persistence") @MapperScan("cn.craftlabs.platform.api.persistence")
public class PlatformApplication { public class PlatformApplication {
+1 -1
View File
@@ -29,7 +29,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId> <artifactId>mybatis-plus-spring-boot4-starter</artifactId>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.flywaydb</groupId> <groupId>org.flywaydb</groupId>
+15 -13
View File
@@ -18,14 +18,14 @@
<properties> <properties>
<java.version>17</java.version> <java.version>17</java.version>
<spring-boot.version>3.4.5</spring-boot.version> <spring-boot.version>4.0.0</spring-boot.version>
<!-- 平台数据访问:PostgreSQL 15 + MyBatis-PlusSpring Boot 3 用 boot3-starter --> <!-- 平台数据访问:PostgreSQL 15 + MyBatis-PlusSpring Boot 4 用 boot4-starter -->
<mybatis-plus.version>3.5.15</mybatis-plus.version> <mybatis-plus.version>3.5.15</mybatis-plus.version>
</properties> </properties>
<!-- <!--
说明:选用 Spring Boot 3.4.x LTS 以保证多数环境可解析; Spring Boot 4.0.x — 与 docs/平台架构思路.md 对齐。
产品文档目标 4.0.* 可在父 POM 升级 spring-boot.version 并全量回归 MyBatis-Plus 使用 boot4-starter
--> -->
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
@@ -38,13 +38,23 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.baomidou</groupId> <groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId> <artifactId>mybatis-plus-spring-boot4-starter</artifactId>
<version>${mybatis-plus.version}</version> <version>${mybatis-plus.version}</version>
</dependency> </dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
<build> <build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration>
<release>${java.version}</release>
</configuration>
</plugin>
</plugins>
<pluginManagement> <pluginManagement>
<plugins> <plugins>
<plugin> <plugin>
@@ -59,14 +69,6 @@
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.13.0</version>
<configuration>
<release>${java.version}</release>
</configuration>
</plugin>
<!-- 子模块显式引用后,在 validate 阶段禁止引入客户端 JNI SDK --> <!-- 子模块显式引用后,在 validate 阶段禁止引入客户端 JNI SDK -->
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>