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 十六进制与字符串的转换

    笔者前几日在开服过程中需要将字符串转化成为16进制的字符串,在网上找到了一些方法尝试之后,均发现存在一个问题-->字符串转为16进制后再转回来,英文正常,中文出现乱码
    2009-05-05
  • Gradle的使用教程详解

    Gradle的使用教程详解

    Gradle它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,目前也增加了基于Kotlin语言的kotlin-based DSL,抛弃了基于XML的各种繁琐配置,下面通过本文给大家介绍Gradle的使用教程,感兴趣的朋友一起看看吧
    2020-09-09
  • spring boot + jpa + kotlin入门实例详解

    spring boot + jpa + kotlin入门实例详解

    这篇文章主要介绍了spring boot + jpa + kotlin入门实例详解 ,需要的朋友可以参考下
    2017-07-07
  • SpringBoot项目Docker部署三种方式

    SpringBoot项目Docker部署三种方式

    本文主要介绍了SpringBoot项目Docker部署三种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • MyBatis中<collection>标签的多种用法

    MyBatis中<collection>标签的多种用法

    collection标签是处理一对多关系的关键工具,它能够将查询结果巧妙地映射到Java对象的集合属性中,本文主要介绍了MyBatis中<collection>标签的多种用法,感兴趣的可以了解一下
    2025-04-04
  • Java的ThreadLocal源码详细解读

    Java的ThreadLocal源码详细解读

    这篇文章主要介绍了Java的ThreadLocal源码详细解读,ThreadLocal翻译过来就是线程本地,也就是本地线程变量,意思是ThreadLocal中填充的变量属于当前线程,该变量对其他线程而言是隔离的,需要的朋友可以参考下
    2023-08-08
  • SpringMVC实现文件上传与下载、拦截器、异常处理器等功能

    SpringMVC实现文件上传与下载、拦截器、异常处理器等功能

    这篇文章主要给大家介绍了关于SpringMVC实现文件上传与下载、拦截器、异常处理器等功能的相关资料,这些功能在我们日常开发中经常会遇到,本文通过示例代码介绍的非常详细,需要的朋友可以参考下
    2021-09-09
  • java 获取HttpRequest Header的几种方法(必看篇)

    java 获取HttpRequest Header的几种方法(必看篇)

    下面小编就为大家带来一篇java 获取HttpRequest Header的几种方法(必看篇)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-09-09
  • 一文详解如何使用Java分割PDF文件

    一文详解如何使用Java分割PDF文件

    PDF是一种用于显示和打印文档的文件格式,它非常广泛地应用于电子书籍、报告、合同等文件的传递和共享,这篇文章主要给大家介绍了关于如何使用Java分割PDF文件的相关资料,需要的朋友可以参考下
    2024-01-01
  • 关于spring中单例Bean引用原型Bean产生的问题及解决

    关于spring中单例Bean引用原型Bean产生的问题及解决

    这篇文章主要介绍了关于spring中单例Bean引用原型Bean产生的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06

最新评论