先说一下背景,因为要用一个springcloud的组件,从对应版本上必须将springboot 2.1.17 升级至springboot 2.6.15。

第一步 

更换parent

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.6.15</version>
    </parent>
<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.3.8</version>
        </dependency>

比较沙雕的以为这就结束了,直接启动发现报错

org.springframework.core.metrics.ApplicationStartup 

面对这个错误我做了以下的操作

1.看ApplicationStartup是哪个包下面的,引入

2.查看对应包的冲突

但是都不能很好的解决问题  是因为这个问题的出现是因为springboot和springcloud的版本对应出现了问题。于是找了一下springboot和springcloud的对应关系,官网网站地址如下Spring Cloud

有了思路就对应去改了一下:步骤如下

1.把spring-context的dependency删掉

2.引入以下的包

<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-dependencies</artifactId>
            <version>2021.0.5</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
<dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-bootstrap</artifactId>
            <version>3.1.5</version>
        </dependency>

至此org.springframework.core.metrics.ApplicationStartup 解决

2.重新启动后再次报错:

Caused by: java.lang.ClassNotFoundException: redis.clients.jedis.util.SafeEncoder

 java.lang.NoClassDefFoundError: reactor/core/publisher/TopicProcessor

Correct the classpath of your application so that it contains a single, compatible version of org.springframework.data.redis.repository.configuration.RedisRepositoryConfigurationExtension

等报错

重新解决问题,经过用idea 最新版依赖项分析,操作如下图

发现是java-core没有引入以及redis版本出现了冲突

于是重新增加pom文件配置

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
            <version>2.6.15</version>
        </dependency>
<dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-core</artifactId>
            <version>5.3.27</version>
        </dependency>

问题解决,但是这两个包用maven引入的时间还是挺久的,可以多等一下

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐