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

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

相关推荐
Flynn Liang38 分钟前
RAG 评估体系:黄金集、检索指标与 LLM-as-Judge 落地
java·langchain·rag·评估·langchain4j·检索指标
SimonKing2 小时前
Workbuddy太占C盘空间了,写个迁移工具迁走10G的数据
java·后端·程序员
Hvitur2 小时前
Java - Lambda
java·开发语言·python
杨凯凡3 小时前
Spring Boot 大文件下载如何实现断点续传?HTTP Range、206 与 416 实战
spring boot·后端·http
apcipot_rain7 小时前
C++转Java日记(06)
java·开发语言
金銀銅鐵12 小时前
带您看懂字节码指令(一):一帧里有什么
java·后端·ai编程
nice_lcj52014 小时前
【从零理解 Spring AI · 14】RAG 的四个环节:加载、切分、向量化、检索
java·spring boot·embedding·向量数据库·rag·spring ai·ai应用开发
学长毕设15 小时前
基于springboot科创竞赛信息平台-附源码
java·spring boot·后端
聪明的笨猪猪16 小时前
Java 工程案例:AI 生成 @Async 异步线程池踩坑
java·经验分享·面试·ai编程