JAVA架构升级:Springboo2.5.14 升级至Springboo3.1.7 JDK11 升级JDK21
•
Jave
架构升级:Springboo2.5.14 升级至Springboo3.1.7 JDK11 升级JDK21
-
- 依赖升级
- 问题记录
-
- 问题1、gradle 7.5.1 升级至8.5
- 问题2、intellij idea 由 2022.1 升级至 2023.3.2
- 问题3、springboot 版本支持问题 升级至3.1.7
- 问题4、lombok 升级至1.18.30
- 问题5、javax. 包转为 jakarta. 包
- 问题6、本项目使用log4j2要排除logback依赖
- 问题7、如依赖cn.hutool 升级至5.8.23+
- 问题8、springfox-swagger2 升级到 springdoc 2.3.0
- 问题9、fastjson fastjson2升级到 2.0.45
- 问题10、’dubbo”2.4.9’升级至 2.6.9
- 问题11、 job center 由1.1.8 升级至1.1.15
- 问题12、druid 1.2.16升级至 1.2.21
- 问题13、redis 配置调整
- 补充14、mysql 依赖包调整 com.mysql:mysql-connector-j
依赖升级
Gradle 7.5.1 ---> 8.5 intellij idea 2022.1 ---> 2023.3.2 Springboot 2.5.14 ---> 3.1.17 Lombok 1.18.24 ---> 1.18.30 hutool-all 5.1.1 ---> 5.8.23 springfox-swagger2 ---> springdoc 2.3.0 fastjson、fastjson2 ---> 2.0.45 dubbo 2.4.9 ---> 2.6.9 druid 1.2.16 ---> 1.2.21
问题记录
问题1、gradle 7.5.1 升级至8.5
Unsupported Java. Your build is currently configured to use Java 21.0.1 and Gradle 7.5.1. Possible solution: - Use Java 18 as Gradle JVM: Open Gradle settings - Upgrade Gradle wrapper to 8.5 version and re-import the project
问题2、intellij idea 由 2022.1 升级至 2023.3.2
问题3、springboot 版本支持问题 升级至3.1.7
id 'org.springframework.boot' version '3.1.7' id 'io.spring.dependency-management' version '1.1.4'
问题4、lombok 升级至1.18.30
Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘com.sun.tools.javac.tree.JCTree qualid’
处理:lombok版本兼容性的问题 :依赖更新新版 lombok 为 1.18.30 即可
compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.30' annotationProcessor group: 'org.projectlombok', name: 'lombok', version: '1.18.30'
问题5、javax. 包转为 jakarta. 包
错误: 找不到符号import javax.annotation.Resource; 错误: 程序包javax.servlet.http不存在import javax.servlet.http.HttpServletRequest;
处理新包路径引入
import jakarta.annotation.Resource; import jakarta.servlet.http.HttpServletRequest;


问题6、本项目使用log4j2要排除logback依赖
//去除logback implementation.exclude group: 'ch.qos.logback'
问题7、如依赖cn.hutool 升级至5.8.23+
cn.hutool:hutool-all 5.1.1 升级至5.8.23
问题8、springfox-swagger2 升级到 springdoc 2.3.0
文档:https://springdoc.org/index.html#javadoc-support
//补充javax 依赖 implementation 'javax.servlet:javax.servlet-api:4.0.1'
应用主类添加注解@EnableOpenApi (swagger2是@EnableSwagger2)
swagger配置类SwaggerProperties.class,与swagger2.xx 版本有差异,具体看下文
自定义一个配置类 SwaggerConfiguration.class,看下文
访问地址:http://localhost:8080/swagger-ui/index.html
(swagger2.xx版本访问的地址为http://localhost:8080/swagger-ui.html)
//替换为springdoc implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:2.3.0'
问题9、fastjson fastjson2升级到 2.0.45
implementation "com.alibaba:fastjson:2.0.45" implementation "com.alibaba.fastjson2:fastjson2:2.0.45"
问题10、‘dubbo’’2.4.9’升级至 2.6.9
implementation(group: 'com.alibaba', name: 'dubbo', version:'2.6.9')
问题11、 job center 由1.1.8 升级至1.1.15
// job implementation(group: 'com.nxin.framework', name: 'job-center-client', version: '1.1.15') implementation(group: 'com.nxin.framework', name: 'job-center-core', version: '1.1.15')
问题12、druid 1.2.16升级至 1.2.21
implementation 'com.alibaba:druid-spring-boot-starter:1.2.21' implementation group: 'com.alibaba', name: 'druid', version:"$druidVersion"
问题13、redis 配置调整
#redis配置
spring.data.redis.host = ${redis}
spring.data.redis.port = 6379
spring.data.redis.password = ******
spring.data.redis.database = 12
spring.data.redis.timeout = 60000
spring.data.redis.lettuce.pool.max-wait = 30000
spring.data.redis.lettuce.pool.max-idle = 10
spring.data.redis.lettuce.pool.max-active = 10
补充14、mysql 依赖包调整 com.mysql:mysql-connector-j
// runtimeOnly 'mysql:mysql-connector-java:8.0.33'
runtimeOnly 'com.mysql:mysql-connector-j'
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://net2asp.com/7edb1163a5.html
