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,就这些吧。

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

相关推荐
Derek_Smart18 分钟前
从一次 OOM 事故说起:打造生产级的 JVM 健康检查组件
java·jvm·spring boot
NE_STOP1 小时前
MyBatis-mybatis入门与增删改查
java
孟陬5 小时前
国外技术周刊 #1:Paul Graham 重新分享最受欢迎的文章《创作者的品味》、本周被划线最多 YouTube《如何在 19 分钟内学会 AI》、为何我不
java·前端·后端
想用offer打牌5 小时前
一站式了解四种限流算法
java·后端·go
华仔啊5 小时前
Java 开发千万别给布尔变量加 is 前缀!很容易背锅
java
也些宝6 小时前
Java单例模式:饿汉、懒汉、DCL三种实现及最佳实践
java
Nyarlathotep01136 小时前
SpringBoot Starter的用法以及原理
java·spring boot
wuwen56 小时前
WebFlux + Lettuce Reactive 中 SkyWalking 链路上下文丢失的修复实践
java
SimonKing7 小时前
GitHub 10万星的OpenCode,正在悄悄改变我们的工作流
java·后端·程序员