SpringBoot升级全纪录之项目启动

SpringBoot升级全纪录之项目启动

  • [1、错误: java.nio.charset.MalformedInputException: Input length = 1](#1、错误: java.nio.charset.MalformedInputException: Input length = 1)
  • [2、java.lang.NoClassDefFoundError: ch/qos/logback/core/util/StatusPrinter2](#2、java.lang.NoClassDefFoundError: ch/qos/logback/core/util/StatusPrinter2)
  • [3、Logging system failed to initialize using configuration from 'null'](#3、Logging system failed to initialize using configuration from 'null')
  • [4、java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ser/std/ToStringSerializerBase](#4、java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ser/std/ToStringSerializerBase)
  • [5、Caused by: java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required](#5、Caused by: java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required)
  • 6、程序包com.baomidou.mybatisplus.generator不存在
  • [7、Invalid value type for attribute 'factoryBeanObjectType': java.lang.String](#7、Invalid value type for attribute 'factoryBeanObjectType': java.lang.String)
  • [8、Bean named 'redisTemplate' is expected to be of type 'org.springframework.data.redis.core.StringRedisTemplate' but was actually of type 'org.springframework.data.redis.core.RedisTemplate'](#8、Bean named ‘redisTemplate’ is expected to be of type ‘org.springframework.data.redis.core.StringRedisTemplate’ but was actually of type ‘org.springframework.data.redis.core.RedisTemplate’)
  • [9、No data sources are configured to run this SQL and provide advanced code assistance. Disable this inspection via problem menu (Alt+Enter).](#9、No data sources are configured to run this SQL and provide advanced code assistance. Disable this inspection via problem menu (Alt+Enter).)
  • [10、org.apache.catalina.core.StandardService stopInternal](#10、org.apache.catalina.core.StandardService stopInternal)
  • [11、Initialization Sequence datacenterId:16 workerId:17](#11、Initialization Sequence datacenterId:16 workerId:17)
  • [12、 Bean named 'ddlApplicationRunner' is expected to be of type 'org.springframework.boot.Runner' but was actually of type 'org.springframework.beans.factory.support.NullBean'](#12、 Bean named 'ddlApplicationRunner' is expected to be of type 'org.springframework.boot.Runner' but was actually of type 'org.springframework.beans.factory.support.NullBean')
  • [13、Access denied for user 'root'@'127.0.0.1' (using password: YES)](#13、Access denied for user ‘root‘@‘127.0.0.1‘ (using password: YES))
  • END

1、错误: java.nio.charset.MalformedInputException: Input length = 1

原因:项目编码问题

解决:https://blog.csdn.net/qq_38254635/article/details/141018793


2、java.lang.NoClassDefFoundError: ch/qos/logback/core/util/StatusPrinter2

原因:Maven包冲突

解决:https://blog.csdn.net/qq_38254635/article/details/141019735


3、Logging system failed to initialize using configuration from 'null'

原因:缺少 logback-spring.xml 配置文件

解决:https://blog.csdn.net/qq_38254635/article/details/141021782


4、java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ser/std/ToStringSerializerBase

原因:Maven包版本有误,类不存在,升级至2.17.1

解决:https://blog.csdn.net/qq_38254635/article/details/141024403


5、Caused by: java.lang.IllegalArgumentException: Property 'sqlSessionFactory' or 'sqlSessionTemplate' are required

原因:升级mybatis-plus-boot-starter由2.3至3.5.3.2

解决:https://blog.csdn.net/qq_38254635/article/details/141159153


6、程序包com.baomidou.mybatisplus.generator不存在

原因:mybatis-plus-generator版本不兼容

解决:https://blog.csdn.net/qq_38254635/article/details/141166324


7、Invalid value type for attribute 'factoryBeanObjectType': java.lang.String

原因:mybatis-plus-generator版本不兼容

解决:https://blog.csdn.net/qq_38254635/article/details/141167883


8、Bean named 'redisTemplate' is expected to be of type 'org.springframework.data.redis.core.StringRedisTemplate' but was actually of type 'org.springframework.data.redis.core.RedisTemplate'

原因:bean未识别,注解需替换为 @Resource

解决:https://blog.csdn.net/qq_38254635/article/details/141725820


原因:需要配置Database

解决:https://blog.csdn.net/qq_38254635/article/details/141726108


10、org.apache.catalina.core.StandardService stopInternal

原因:由于Java EE已经变更为Jakarta EE,包名以javax开头的需要改为jakarta

解决:https://blog.csdn.net/qq_38254635/article/details/142137747


11、Initialization Sequence datacenterId:16 workerId:17

原因:启动类增加 @EnableAutoConfiguration

解决:https://blog.csdn.net/qq_38254635/article/details/143887970


12、 Bean named 'ddlApplicationRunner' is expected to be of type 'org.springframework.boot.Runner' but was actually of type 'org.springframework.beans.factory.support.NullBean'

原因:mybatis-plus-boot-starter版本与当前项目不兼容

解决:https://blog.csdn.net/qq_38254635/article/details/143888315


13、Access denied for user 'root'@'127.0.0.1' (using password: YES)

原因:Mysql的密码错了,修改一下密码即可。

解决:https://blog.csdn.net/qq_38254635/article/details/143888615


END

从目前的报错来看,直接从JAVA8往JAVA17/21去升级,一定是困难重重的,而且很多的组件都会出现不适配的情况。

所以,结合目前的情况,建议放弃直接改造。

而是使用JAVA17直接搭建一套空白脚手架,然后将业务代码分类填充,就会方便很多,而且会更快。

空白脚手架注意内容:拦截器,过滤器,事务控制,跨域,加解密,加签验签,权限,session控制,通用异常处理机制,数据库驱动,Mybatis组件,定时任务quartz,日志管理,redis组件,配置文件jasypt加密,RABC,工具类等等。


OK,就这些吧。

有什么不对的还望指正,书写不易,觉得有帮助就点个赞吧!☺☺☺

相关推荐
小当家.1051 分钟前
AIGrader:一个 AI 作业批改平台的 Java EE 课设实战
java·人工智能·java-ee
devilnumber5 分钟前
Lambda|行为参数化 完整精讲
java·lambda·行为参数化
garmin Chen5 分钟前
Prompt工程入门:让AI按你的要求工作(3)--Prompt工程与提示词安全评测概述
java·人工智能·python·安全·prompt
阿正的梦工坊7 分钟前
【Rust】05-结构体、枚举与模式匹配
java·数据库·rust
阿正的梦工坊8 分钟前
【Rust】10-Cargo、测试与实用开发工作流
java·rust·log4j
用户2986985301410 分钟前
Java 实战:Word 文档中超链接的添加与自定义技巧
java·后端
swordbob17 分钟前
Spring事务失效的场景
java·开发语言·spring
Devin~Y19 分钟前
大厂 Java 面试实战:从 Spring Boot 微服务到 AI RAG 音视频平台全链路解析
java·spring boot·redis·spring cloud·微服务·rag·spring ai
让我上个超影吧20 分钟前
Cluade code:Subagents (子代理)
java·ai
aXin_ya30 分钟前
乐尚代驾,总结
java