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

Java运行HelloWorld报JNI错误及版本兼容异常求助

解决Java UnsupportedClassVersionError问题

你遇到的UnsupportedClassVersionError本质是编译版本和运行版本不匹配:

  • 你用JDK 17(javac 17.0.4)编译代码,生成的类文件版本为61.0(对应JDK17)
  • 但运行时使用的是JRE 1.8(Java 8),它仅支持最高类文件版本52.0(对应JDK8),无法识别高版本编译的类文件。

方法一:用匹配JDK版本编译

如果需要在Java8环境运行,直接用JDK8的javac编译代码:

  1. 找到你Java8安装目录下的javac程序(Windows为bin/javac.exe,Linux/Mac为bin/javac)
  2. 执行编译命令:
# Windows示例
C:\Program Files\Java\jdk1.8.0_351\bin\javac HelloWorld.java
# Linux/Mac示例
/usr/lib/jvm/java-8-openjdk-amd64/bin/javac HelloWorld.java
  1. 再用java命令运行:
java HelloWorld

方法二:指定编译目标版本(跨版本编译)

如果只能用JDK17编译,但要兼容Java8运行,编译时添加版本参数:

# JDK9+可用简洁的--release参数
javac --release 8 HelloWorld.java

# 或者用传统参数(需指定Java8的引导类路径)
javac -source 8 -target 8 -bootclasspath /path/to/java8/jre/lib/rt.jar HelloWorld.java

注:-bootclasspath需替换为你Java8安装目录下rt.jar的实际路径,比如Windows下为C:\Program Files\Java\jdk1.8.0_351\jre\lib\rt.jar。

方法三:统一运行和编译的Java版本

直接将运行环境升级到JDK17,确保java和javac都指向同一版本,编译运行即可正常执行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 20:05:24