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-apijakarta.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 解决依赖版本不一致报错 | 文末送书相关推荐

  1. 2018年最新人工智能书单,总有一本你爱的丨文末送书

    为什么大家都在学人工智能?因为:"机会是留给有准备的人,但成功是留给已经行动的人."总是被别人的高薪所吸引,却缺乏行动力的你,桌上永远还缺乏一本行动的入门书籍. 小编整理了异步图书 ...

  2. 解决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 ...

  3. springboot导入项目依赖报错_如何解决spring boot 项目导入依赖后代码报错问题

    如何解决spring boot 项目导入依赖后代码报错问题 2020-08-15  14:17:18 代码截图如图所示(由于本人问题已经解决,没来得及截图,所以在网上找了一张图片) ​ 针对图中所示的 ...

  4. 媳妇居然在家偷偷背着我偷看我的面试笔记,一个月后拿下大厂offer!(文末送书)...

    知乎热议: 到底要掌握哪些技术才能顺利的找一份20K的工作? 根据这些年的工作经验,加上网络搜集,我特意整理了一套针对职场进阶的干货! 有很多朋友靠着这些内容进行复习拿到了BATJ等大厂的offer, ...

  5. 月薪没过20K的程序员要注意了!(文末送书)

    知乎热议: 到底要掌握哪些技术才能顺利的找一份20K的工作? 根据这些年的工作经验,加上网络搜集,我特意整理了一套针对职场进阶的干货! 有很多朋友靠着这些内容进行复习拿到了BATJ等大厂的offer, ...

  6. 挖槽!堪称神级的Java技术手册火了???(文末送书活动)

    前言 本文是为了帮大家快速回顾了Java中知识点,这套面试手册涵盖了诸多Java技术栈的面试题和答案,相信可以帮助大家在最短的时间内用作面试复习,能达到事半功倍效果. 本来想将文件上传到github上 ...

  7. 文末送书 | WAF 那些事

    Hi!,我是小小,这是小小本周的最后一篇,本篇将会介绍WAF的事情,本篇将会文末送书.在此小小举出小手,相当欢迎各位快点快点快点参加. 什么是WAF WAF是一种产品,一种web应用防火墙,通过执行一 ...

  8. 文末送书 | 数据分析简单入门

    这是小小本周的最后一篇,本周重点!文末送书, 我是小小,下面是本期文章,为您奉上! 前言 本实例将会以一个完整的例子用来阐述一个较为简单的Python数据分析.其中Python基础部分不再讲解 构建数 ...

  9. 张益唐被曝已证明黎曼猜想相关问题,震动数学界(文末送书)

    金磊 Alex 发自 凹非寺 量子位 | 公众号 QbitAI 文末送书活动,记得看完啊 ! 先加群后抽奖,这次仅限群友参与 Breaking News! 网传数学家张益唐,已经攻克了朗道-西格尔零点 ...

最新文章

  1. Android 读取meta-data元素的数据
  2. php 安装curl init,linux下为php添加curl扩展的方法及curl_init函数用法案例详解
  3. 绘制E—R图(详细)
  4. 超声检查预测一年后RA病人的MRI侵蚀进展
  5. linux php 安装mysql数据库_linux php安装mysql数据库有哪些方法
  6. static函数与普通函数区别
  7. Pytorch: model.eval(), model.train() 讲解
  8. 小程序 | 使用GitHub创建图床存储器解决CDN配额耗尽问题
  9. ajax返回失败原因,ajax POST请求返回失败
  10. php商品评价代码,php商品对比功能代码分享
  11. jdbc防止sql注入-PreparedStatement
  12. Win7 网络连接正常 无法上网
  13. mini2440 SD卡脱机烧写恢复
  14. 2020计算机408考试大纲,2020考研计算机:计算机408大纲考点变化解析指导
  15. Android xUtils框架最全使用详解
  16. 十三、PS 基本操作
  17. 安卓结构能转换成苹果借口吗_在外面开着手机WiFi有多危险你知道吗?
  18. 华为matepad11无法连接mpencil2
  19. 简单的禁止应用被双开的方法
  20. 投票系统 简易js刷票脚本

热门文章

  1. php护卫神网站日志,联机日志主控中心-使用简介_护卫神
  2. 最优化算法——遗传算法解析
  3. 2023中国汽车销售服务满意度排名:长安汽车与广汽传祺并列自主品牌第一 | 美通社头条...
  4. html代码实现简单的数码时钟
  5. 如何构建有强烈质量意识的学习型组织
  6. 快速幂(python实现)
  7. 关于星空的游戏java_简易动画星空 《Java就该这样学》
  8. 公司内部如何防止员工泄密
  9. 数据分析指标和术语概述
  10. 【CSS】padding,border,margin与width宽度的关系