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

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

相关推荐
Flittly6 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
小兔崽子去哪了6 小时前
Java 生成二维码解决方案
java·后端
人活一口气10 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP12 小时前
Vibe Coding -- 完整项目案例实操
java
荣码12 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing12 小时前
Google第三方授权登录
java·后端·程序员
明月光81812 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑1 天前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯1 天前
GoF设计模式——中介者模式
java·后端·spring·设计模式
青石路1 天前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java