springboot依赖冲突问题及解决过程

 更新时间:2021年09月22日 10:16:38   作者:树林中的啄木鸟  
新搭了一个springboot 2.3.7.RELASE的框架,在集成mysql,tkMapper,mybatis的过程中,启动报错,怎么解决这个问题呢,下面小编给大家带来了springboot依赖冲突问题及解决过程,一起看看吧

项目场景:

 新搭了一个springboot 2.3.7.RELASE的框架,在集成mysql,tkMapper,mybatis的过程中,启动报错。

问题描述:

提示各种依赖的错误 通过idea的功能解决冲突依赖,尝试了多次,也不行 还尝试过删除可能意外引入的jar:

在这里插入图片描述

原因分析:

在之前搭的一个分布式项目里面有这些基础的配置,依赖按照版本拿过来一个个添加,尝试,依然不行。 在旧的项目可以,在这里就不行。 把springboot版本改成和旧项目一样,也不可以。

解决方案:

最后,把代码全部删掉(因为是新项目,所以原本也没几个文件),只留下了一个启动类。然后maven依赖只留下了springboot的test 和 web,尝试启动,是可以的。 接着,慢慢加mysql-collection 依赖,druid依赖。到这里的时候报错了。 查看控制台,发现报错的是一个1.5.7的springboot。想着把它通过exclusions去掉,然后接着clear, install 打包,又报错了。又是一个新的错误。 这时候想起来在最开始处理依赖的时候,就是各种exclusions去除jar包,就是因为版本的问题。 想着添加parent试试。 在pom.xml里面添加parent,通过parent控制springboot依赖。

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.3.7.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

然后把前面去除的exclusions配置去掉,发现这时候启动报的错误正常了!
这里说的正常,是指配置什么,报的是它相关的错误,而不是一些稀奇古怪都没见过的错误。

在这里插入图片描述

查看了下mysql的配置文件没问题,然后根据这个错误百度下:

Unsatisfied dependency expressed through field 'basicProperties

在这里插入图片描述

在项目里面复制进来,没有输入版本号,发现直接自动引入了当前springboot对应的版本。

在这里插入图片描述

然后重启,成功了。

在这里插入图片描述

总结

看了下之前写的项目,发现也是有加parent的,可能是时间长了,忘记了,这次做个笔记记录一下。
这次为啥不加呢,因为搭建的maven工程是有module的,父子工程。
了解了maven的dependencyManagement后,就想通过它来管理jar包依赖,所以就没加parent了。

在这里插入图片描述

到此这篇关于springboot依赖冲突解决过程的文章就介绍到这了,更多相关springboot依赖冲突内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 一文详解java闭包的用途是什么

    一文详解java闭包的用途是什么

    闭包的价值在于可以作为函数对象或者匿名函数,持有上下文数据,作为第一级对象进行传递和保存,下面这篇文章主要给大家介绍了关于java闭包的用途是什么,需要的朋友可以参考下
    2024-03-03
  • spring整合atomikos实现分布式事务的方法示例

    spring整合atomikos实现分布式事务的方法示例

    本文整合了一个spring和atomikos的demo,并且通过案例演示说明atomikos的作用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-05-05
  • java 方法与数组基础使用详解

    java 方法与数组基础使用详解

    Java语言中的“方法”(Method)在其他语言当中也可能被称为“函数”(Function),数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。Java 语言中提供的数组是用来存储固定大小的同类型元素
    2022-04-04
  • spring 声明式事务实现过程解析

    spring 声明式事务实现过程解析

    这篇文章主要介绍了spring 声明式事务实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • java面试应用上线后Cpu使用率飙升如何排查

    java面试应用上线后Cpu使用率飙升如何排查

    这篇文章主要为大家介绍了java面试中应用上线后Cpu使用率飙升如何排查的方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • idea设置JVM运行参数的几种方式

    idea设置JVM运行参数的几种方式

    对JVM运行参数进行修改是JVM性能调优的重要手段,本文主要介绍了idea设置JVM运行参数的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-04-04
  • 解析分别用递归与循环的方式求斐波那契数列的实现方法

    解析分别用递归与循环的方式求斐波那契数列的实现方法

    本篇文章是对分别用递归与循环的方式求斐波那契数列的方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • 分布式框架Zookeeper api的使用介绍

    分布式框架Zookeeper api的使用介绍

    Zookeeper作为⼀个分布式框架,主要用来解决分布式⼀致性问题,它提供了简单的分布式原语,并且对多种编程语⾔提供了API,所以接下来重点来看下Zookeeper的java客户端API使用方式
    2022-09-09
  • Spring boot 启动流程及外部化配置方法

    Spring boot 启动流程及外部化配置方法

    平时我们开发Spring boot 项目的时候,一个SpringBootApplication注解加一个main方法就可以启动服务器运行起来,那它到底是怎么运行起来的呢?这篇文章主要介绍了Spring boot 启动流程及外部化配置,需要的朋友可以参考下
    2022-12-12
  • MyBatis核心源码深度剖析SQL语句执行过程

    MyBatis核心源码深度剖析SQL语句执行过程

    这篇文章主要介绍了MyBatis核心源码深度剖析SQL执行过程,mybatis执行SQL的流程都是根据statement字符串从configuration中获取对应的mappedStatement,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2022-05-05

最新评论