编程羔手解决Maven引入多个版本的依赖包,导致包冲突了

news/2024/6/17 16:18:46 标签: java, 前端, 数据库

最近升级了些依赖发现有个hutool的方法老报错,
java.lang.NoSuchMethodError: cn.hutool.core.util.ObjectUtil.defaultIfNull(Ljava/lang/Object;Ljava/util/function/Supplier;)

在 Maven 项目中,当不同的依赖模块引入 Hutool 的不同版本时,可能会导致冲突和运行时错误。为了解决这个问题,你可以采取以下步骤:

1. 识别是否依赖冲突

首先,先看看这个方法调用的是哪个包的方法。以下只是个举例。

如果不是最新版是旧版就很有可能冲突,或者你直接看Exteranl Libraries

2. 使用 Maven Analyze Dependency 

3. 使用 <exclusions> 排除冲突的 Hutool 依赖

在项目的 pom.xml 文件中,对引起冲突的 Hutool 依赖使用 <exclusions> 标签排除。例如以上图中的justauth的包,引用了旧的hutool的包。把它排除,并刷新maven重新引入,就可以解决。

 <dependency>
                <groupId>com.xkcoding.justauth</groupId>
                <artifactId>justauth-spring-boot-starter</artifactId>
                <version>${justauth.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>cn.hutool</groupId>
                        <artifactId>hutool-core</artifactId>
                    </exclusion>
                </exclusions>
 </dependency>

确保将冲突的 Hutool 依赖在每个模块的依赖中排除,这样可以防止模块间的版本冲突。


http://www.niftyadmin.cn/n/5295836.html

相关文章

ES6之解构赋值详解

✨ 专栏介绍 在现代Web开发中&#xff0c;JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性&#xff0c;还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言&#xff0c;JavaScript具有广泛的应用场景&#x…

覆盖索引和联合索引

覆盖索引和联合索引是数据库中常⻅的两种索引类型 覆盖索引 覆盖索引是指⼀个包含了所有查询需要的列的索引&#xff0c;查询时可以直接从索引中取到需要的数据&#xff0c;⽽不需要再回到表中查找&#xff0c;从⽽可以提⾼查询效率 如下建立覆盖索引 CREATE INDEX orders_…

sklearn学习之用matplotlib绘制鸢尾花(Iris)数据集的两个特征:花萼的长度和宽度

直接上代码 sklearn Iris 数据集是机器学习和数据科学中经常使用的一个标准数据集&#xff0c;用于分类任务 from sklearn import datasets # 加载 Iris 数据集 iris datasets.load_iris() # 查看数据集中的特征名称 print("特征名称:", iris.feature_names…

40道MyBatis面试题带答案(很全)

1. 什么是MyBatis &#xff08;1&#xff09;Mybatis是一个半ORM&#xff08;对象关系映射&#xff09;框架&#xff0c;它内部封装了JDBC&#xff0c;开发时只需要关注SQL语句本身&#xff0c;不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接…

Pytorch整体框架学习

12.28 Learn Pytorch 一、神经网络 二、pytorch的整体框架 1.torch (1).Tensor概念 张量 &#xff0c;最基础的运算单位 &#xff0c;一个多维矩阵&#xff0c;一个可以运行在gpu上的多维数据 (2).Tensor的创建 torch.FloatTensor(2,3) / torch.FloatTensor([2,3,4,5])to…

k8s学习 — (运维)第十一章 ELK 日志管理

k8s学习 — &#xff08;运维&#xff09;第十一章 ELK 日志管理 ※ 各章节重要知识点1 ELK 组成2 集成 ELK2.1 部署 es 搜索服务2.2 部署 logstash 数据清洗2.3 部署 filebeat 数据采集2.4 部署 kibana 可视化界面2.5 Kibana 配置 ※ 各章节重要知识点 k8s学习 — 各章节重要…

云原生|kubernetes|kubernetes资源备份和集群迁移神器velero的部署和使用

前言&#xff1a; kubernetes集群需要灾备吗&#xff1f;kubernetes需要迁移吗&#xff1f; 答案肯定是需要的 那么&#xff0c;如何做kubernetes灾备和迁移呢&#xff1f;当然了&#xff0c;有很多的方法&#xff0c;例如&#xff0c;自己编写shell脚本&#xff0c;或者使用…

【机器学习合集】深度生成模型 ->(个人学习记录笔记)

深度生成模型 深度生成模型基础 1. 监督学习与无监督学习 1.1 监督学习 定义 在真值标签Y的指导下&#xff0c;学习一个映射函数F&#xff0c;使得F(X)Y 判别模型 Discriminative Model&#xff0c;即判别式模型&#xff0c;又称为条件模型&#xff0c;或条件概率模型 生…