【英杰送书第三期】Spring 解决依赖版本不一致报错 | 文末送书
Yan-英杰的主
悟已往之不谏 知来者之可追
C++程序员,2024届电子信息研究生
目录
问题描述
报错信息如下
报错描述
解决方法
总结
【粉丝福利】
【文末送书】
目录:
本书特色:
问题描述
报错信息如下
Description:An attempt was made to call a method that does not exist. The attempt was made from the following location:io.undertow.websockets.jsr.Bootstrap.handleDeployment(Bootstrap.java:84)
The following method did not exist:
javax.servlet.ServletContext.getClassLoader()Ljava/lang/ClassLoader;
The method's class, javax.servlet.ServletContext, is available from the following locations:
jar:file:/E:/.m2/repository/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar!/javax/servlet/ServletContext.class
jar:file:/E:/.m2/repository/jakarta/servlet/jakarta.servlet-api/4.0.4/jakarta.servlet-api-4.0.4.jar!/javax/servlet/ServletContext.class
The class hierarchy was loaded from the following locations:
javax.servlet.ServletContext: file:/E:/.m2/repository/javax/servlet/servlet-api/2.5/servlet-api-2.5.jarAction:
Correct the classpath of your application so that it contains a single, compatible version of javax.servlet.ServletContext
报错描述
试图从以下位置去调用一个不存在的方法:
io.undertow.websockets.jsr.Bootstrap.handleDeployment(Bootstrap.java:84);javax.servlet.ServletContext.getClassLoader()Ljava/lang/ClassLoader;
该方法不存在;
该方法的类javax.servlet.ServletContext
可从以下位置获得:
jar:file:/E:/.m2/repository/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar!/javax/servlet/ServletContext.class
jar:file:/E:/.m2/repository/jakarta/servlet/jakarta.servlet-api/4.0.4/jakarta.servlet-api-4.0.4.jar!/javax/servlet/ServletContext.class
类层次结构是从以下位置加载的:
javax.servlet.ServletContext: file:/E:/.m2/repository/javax/servlet/servlet-api/2.5/servlet-api-2.5.jar
更正应用程序的类路径,使其包含一个单独的兼容版本的javax.servlet.ServletContext
。
上边的解释说人话就是servlet-api
和jakarta.servlet-api
下的 ServletContext.class
冲突了,需要修改一下版本依赖。
解决方法
首先打开IDEA的 setting 设置
然后选择 Plugins 插件,下载Maven Helper
插件,如果安装之后不生效,可以重启一下 IDEA
最后打开 pom.xml 文件,选择 Dependency Analyzer
切换页,选择 All Dependencies as Tree
选项,然后搜索 javax
,然后右键选择 Exclude
排除重复依赖就可以了。
点完之后会发现 pom.xml 文件中会出现如下代码
<dependency>
<groupId>com.xxx.kas.swagger</groupId>
<artifactId>swagger-spring-mvc-core</artifactId>
<version>1.0-SNAPSHOT</version>
<exclusions>
<exclusion>
<artifactId>servlet-api</artifactId>
<groupId>javax.servlet</groupId>
</exclusion>
</exclusions>
</dependency>
如果排除之后依然报错,可以选择上图的Jump To Source
跳转到对应的仓库内将对应版本删除即可。
刷新下依赖,发现正常启动了,搞定。
总结
以后再遇到这种包依赖冲突的问题都可以使用Maven Helper
这个插件来轻松解决,妈妈再也不用担心我的学习了。
【粉丝福利】
Spring Boot3.0王炸版本带来了很多新特性,值得我们深入学习
推荐给大家哔站上动力节点王妈妈的springboot3教程,采用知识点配合项目案例的方式,可以让大家很轻松的掌握SpringBoot
配套资料也非常全面,领取方式可看视频简介区~
该视频博主是博主大学时候,一直跟的,质量完全有保障
点击这里快速学习
SpringBoot3入门到实战【动力节点】SpringBoot3从入门到项目实战-spring boot3通俗易懂高薪必备共计200条视频,包括:001-SpringBoot3课程导读、002-课程介绍、003-开发环境_bilibili等,UP主更多精彩视频,请关注UP账号。http://u3v.cn/69BVDN
【文末送书】
抽取5位粉丝赠送视频配套SpringBoot3实体书籍~
目录:
章节介绍
第一章:JDK关注的新特性
第二章:掌握SpringBoot基础篇
第三章:自动配置
第四章:访问数据库
第五章:说说web服务
第六章:远程访问HttpExchange
第七章:视图技术
第八章:项目实战
第九章:AOT与GraalVM
本书特色:
本书将带你学习掌握Java领域中盛名已久的SpringBoot框架,掌握最新SpringBoot3新特性:@HttpExchange声明式客户端,RFC7807、ProblemDetail,预编译AOT。并基于JDK17的新特性Java Record,Text Block , 密闭类等一网打尽。本书结合新特性,以实际项目需求入手,详解SpringBoot核心知识点, 突出Web应用痛点解决方案。先知识点后项目案例,让各位学习者快速轻松掌握SpringBoot。
【英杰送书第三期】Spring 解决依赖版本不一致报错 | 文末送书相关推荐
- 2018年最新人工智能书单,总有一本你爱的丨文末送书
为什么大家都在学人工智能?因为:"机会是留给有准备的人,但成功是留给已经行动的人."总是被别人的高薪所吸引,却缺乏行动力的你,桌上永远还缺乏一本行动的入门书籍. 小编整理了异步图书 ...
- 解决pandas读取parquet报错ImportError:Unable to find a usable engine;tried using: ‘pyarrow‘, ‘fastparquet‘
完整报错如下: ImportError: Unable to find a usable engine; tried using: 'pyarrow', 'fastparquet'. pyarrow ...
- springboot导入项目依赖报错_如何解决spring boot 项目导入依赖后代码报错问题
如何解决spring boot 项目导入依赖后代码报错问题 2020-08-15 14:17:18 代码截图如图所示(由于本人问题已经解决,没来得及截图,所以在网上找了一张图片) 针对图中所示的 ...
- 媳妇居然在家偷偷背着我偷看我的面试笔记,一个月后拿下大厂offer!(文末送书)...
知乎热议: 到底要掌握哪些技术才能顺利的找一份20K的工作? 根据这些年的工作经验,加上网络搜集,我特意整理了一套针对职场进阶的干货! 有很多朋友靠着这些内容进行复习拿到了BATJ等大厂的offer, ...
- 月薪没过20K的程序员要注意了!(文末送书)
知乎热议: 到底要掌握哪些技术才能顺利的找一份20K的工作? 根据这些年的工作经验,加上网络搜集,我特意整理了一套针对职场进阶的干货! 有很多朋友靠着这些内容进行复习拿到了BATJ等大厂的offer, ...
- 挖槽!堪称神级的Java技术手册火了???(文末送书活动)
前言 本文是为了帮大家快速回顾了Java中知识点,这套面试手册涵盖了诸多Java技术栈的面试题和答案,相信可以帮助大家在最短的时间内用作面试复习,能达到事半功倍效果. 本来想将文件上传到github上 ...
- 文末送书 | WAF 那些事
Hi!,我是小小,这是小小本周的最后一篇,本篇将会介绍WAF的事情,本篇将会文末送书.在此小小举出小手,相当欢迎各位快点快点快点参加. 什么是WAF WAF是一种产品,一种web应用防火墙,通过执行一 ...
- 文末送书 | 数据分析简单入门
这是小小本周的最后一篇,本周重点!文末送书, 我是小小,下面是本期文章,为您奉上! 前言 本实例将会以一个完整的例子用来阐述一个较为简单的Python数据分析.其中Python基础部分不再讲解 构建数 ...
- 张益唐被曝已证明黎曼猜想相关问题,震动数学界(文末送书)
金磊 Alex 发自 凹非寺 量子位 | 公众号 QbitAI 文末送书活动,记得看完啊 ! 先加群后抽奖,这次仅限群友参与 Breaking News! 网传数学家张益唐,已经攻克了朗道-西格尔零点 ...
最新文章
- Android 读取meta-data元素的数据
- php 安装curl init,linux下为php添加curl扩展的方法及curl_init函数用法案例详解
- 绘制E—R图(详细)
- 超声检查预测一年后RA病人的MRI侵蚀进展
- linux php 安装mysql数据库_linux php安装mysql数据库有哪些方法
- static函数与普通函数区别
- Pytorch: model.eval(), model.train() 讲解
- 小程序 | 使用GitHub创建图床存储器解决CDN配额耗尽问题
- ajax返回失败原因,ajax POST请求返回失败
- php商品评价代码,php商品对比功能代码分享
- jdbc防止sql注入-PreparedStatement
- Win7 网络连接正常 无法上网
- mini2440 SD卡脱机烧写恢复
- 2020计算机408考试大纲,2020考研计算机:计算机408大纲考点变化解析指导
- Android xUtils框架最全使用详解
- 十三、PS 基本操作
- 安卓结构能转换成苹果借口吗_在外面开着手机WiFi有多危险你知道吗?
- 华为matepad11无法连接mpencil2
- 简单的禁止应用被双开的方法
- 投票系统 简易js刷票脚本