You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

解决JDK 1.7环境下Maven依赖引发的Unsupported major.minor version异常

解决JDK 1.7环境下Jetty运行抛出Unsupported major.minor version 52.0的问题

最近我碰到了个挺头疼的问题,折腾了一阵终于解决了,分享给有类似困境的朋友:

我手头有个Maven项目必须部署在JDK 1.7环境下运行——虽然明知道JDK 1.7早就停止官方支持了,但项目迁移到JDK 1.8/1.9的排期还得等好几个季度才能推进。结果启动服务器的时候直接炸了,抛出了这个异常:

org/eclipse/jetty/server/handler/HandlerCollection : Unsupported major.minor version 52.0

紧接着服务器就直接退出,根本没法正常启动。

问题根因

先给大家拆解下这个错误:Unsupported major.minor version 52.0对应的是JDK 1.8编译生成的字节码版本。这说明我当时用的Jetty版本是基于JDK 1.8编译的,而JDK 1.7的虚拟机无法识别这种高版本字节码,自然就启动失败了。

解决方案

查了一圈资料后,我发现Jetty 9.2系列是官方最后一批支持JDK 1.7的稳定分支。于是我直接把Maven依赖里的Jetty版本降级到9.2.x的具体版本(比如9.2.29.v20191105),重新构建项目后启动,异常就完全消失了。

给大家贴个pom.xml里的依赖配置示例,方便参考:

<dependency>
    <groupId>org.eclipse.jetty</groupId>
    <artifactId>jetty-server</artifactId>
    <version>9.2.29.v20191105</version>
</dependency>

如果你的项目里还用到了Jetty的其他组件(比如jetty-webapp、jetty-servlet等),记得把这些组件的版本也统一改成9.2.x的对应版本,避免版本不一致带来的其他问题。

内容的提问来源于stack exchange,提问作者tryingToLearn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:51:05