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

如何解决Java 17运行Java Web应用时的java.lang.UnsupportedClassVersionError错误

Java Web应用部署Tomcat报错的解决办法

错误原因

java.lang.UnsupportedClassVersionError 这个错误的核心是服务器上的Tomcat运行环境JRE版本和编译代码的JDK版本不兼容:

  • 你用Java17编译的类文件版本为61.0
  • 服务器上的Tomcat使用的JRE仅能识别最高52.0版本的类文件(对应Java8)
  • 本地Eclipse里的Tomcat配置了Java17的JRE,因此可以正常运行

解决方案

方案1:升级服务器的JRE版本到Java17

Tomcat 10.0.27支持Java8到Java18,直接替换服务器上的JRE即可:

  • 下载并安装Java17到服务器
  • 配置Tomcat的环境变量,指定使用Java17:
    • Linux系统:在Tomcat的bin/setenv.sh中添加 export JAVA_HOME=/你的Java17安装路径
    • Windows系统:在Tomcat的bin/setenv.bat中添加 set JAVA_HOME=C:\你的Java17安装路径
    • 如果没有setenv文件,直接修改catalina.sh(Linux)或catalina.bat(Windows),加入上述配置

方案2:降低项目的编译版本到Java8

若不想升级服务器JRE,可调整项目编译级别适配Java8:

  • 在Eclipse中右键项目 → 属性 → Java编译器
  • 勾选「启用项目特定设置」,将「编译器合规性级别」改为1.8
  • 重新编译项目,生成兼容Java8的类文件后再部署到服务器

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 09:50:45