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

配置JAVA_HOME与Android SDK命令行工具后仍遇JNI错误求助

问题分析与解决方案

问题根源

你遇到的UnsupportedClassVersionError是Java版本不兼容导致的:

  • 报错中的class file version 55.0对应Java 11(即该类是用Java 11编译的)
  • 你当前使用的Java 8(1.8.0)仅支持最高class file version 52.0,无法识别Java 11编译的类文件

解决方案

  • 安装Java 11或更高版本(Android SDK命令行工具的新版依赖Java 11+环境)
  • 更新系统环境变量:
    • 修改JAVA_HOME,使其指向新安装的Java 11目录
    • 将Java 11的bin目录(如C:\Program Files\Java\jdk-11.x.x\bin)移到系统PATH的最顶端,确保系统优先调用新Java版本
  • 验证配置:打开新的命令行窗口,执行以下命令确认版本:
    java -version
    javac -version
    
    输出需显示Java 11及以上版本
  • 重新执行Android SDK相关操作

附:你提供的报错与版本信息

报错信息

Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/prefs/AndroidLocationsProvider has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:473)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:355)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
        at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
        at java.lang.Class.getMethod0(Class.java:3018)
        at java.lang.Class.getMethod(Class.java:1784)
        at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:650)
        at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:632)

当前Java版本

java version "1.8.0_351"
Java(TM) SE Runtime Environment (build 1.8.0_351-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.351-b10, mixed mode)

当前javac版本

javac 1.8.0_351

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 10:50:24