HTTP Status 500 - Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: ‘void ja

报错:HTTP Status 500 - Handler dispatch failed; nested exception is java.lang.NoSuchMethodError: 'void javax.servlet.http.HttpServletResponse.setContentLengthLong(long)'

昨天在跟着视频学springmvc的时候出现了报错,花了五六个小时,今天终于解决了...

先看看错误截图

这些是pom文件里的依赖

(下面我试着用浅薄的经验和搜到的内容来讲这报错)

首先看报错的内容:

 在程序里面的报错没有提示说我们自己项目的哪一行报错(没有蓝色的一行)

再看看网页上的报错,我们可以看见是org.springframework.web.×××的包报错和orgtomcat.×××报的错,我们大致就可以推断是依赖出的问题。

然后改依赖版本就可以解决了(感觉很简单,但也许只是感觉。。。)

因为每个人用的jdk,Tomcat,springmvc的版本都不一样

如果你jdk用的17(version 61)或是更高,首先想到了的是降低springmvc的版本,并照着做了,它就会报一个新的错(Unsupported class file major version 61),原因就是JDK和SpringMVC版本不对应(和Spring也不对应,两者版本相同),我用的是jdk17,JDK17要用5.3.0以上的版本,那还得减低项目里jdk的版本,理论上是可以成功的,但挺复杂的(我昨天就是这样试的,但没成功...有兴趣和时间的伙伴可以试试,如果尝试失败了记得把版本改回去,比如下图的配置(不然这图可能就是你自己在网上搜到的...)

那就就剩改Tomcat的版本,有基础的伙伴一定知道,pom里面的Tomcat依赖只有到7版本的,高的就要调用本地的,下面是步骤:

配置完成后再运行就不报错了

猜你喜欢

转载自blog.csdn.net/m0_63930592/article/details/127344321