loading class: java/util/List (java.lang.IllegalArgumentException: Unsupported c...

2026年06月20日 09:05 27.32 秒 success

错误信息

[09:04:48] [main/WARN] [mixin/]: Error loading class: java/util/List (java.lang.IllegalArgumentException: Unsupported class file major version 70) Exception in thread "main" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:32) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) Caused by: java.lang.reflect.InvocationTargetException at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:119) at java.base/java.lang.reflect.Method.invoke(Method.java:565) at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.serverService(CommonLaunchHandler.java:128) at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonServerLaunchHandler.runService(CommonServerLaunchHandler.java:32) at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ... 8 more Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:392) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:250) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.service.modlauncher.MixinTransformationHandler.processClass(MixinTransformationHandler.java:131) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.launch.MixinLaunchPluginLegacy.processClass(MixinLaunchPluginLegacy.java:131) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.serviceapi.ILaunchPluginService.processClassWithFlags(ILaunchPluginService.java:156) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchPluginHandler.offerClassNodeToPlugins(LaunchPluginHandler.java:94) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.ClassTransformer.transform(ClassTransformer.java:120) at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.TransformingClassLoader.maybeTransformClassBytes(TransformingClassLoader.java:57) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.readerToClass(ModuleClassLoader.java:190) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.lambda$findClass$20(ModuleClassLoader.java:298) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.loadFromModule(ModuleClassLoader.java:311) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.findClass(ModuleClassLoader.java:298) at cpw.mods.securejarhandler/cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:214) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:502) at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.Bootstrap.bootStrap(Bootstrap.java:45) at TRANSFORMER/minecraft@1.21.1/net.minecraft.server.Main.main(Main.java:120) at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) ... 14 more Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinPreProcessorException: Attach error for mthoughts.mixins.json:ServerLevelMixin from mod midnightthoughts during activity: [Transform -> Method onAfterWakeUpAllPlayers(Ljava/util/function/BooleanSupplier;Lorg/spongepowered/asm/mixin/injection/callback/CallbackInfo;)V -> INVOKEINTERFACE -> java/util/List::iterator:()Ljava/util/Iterator;] at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:313) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.createContextFor(MixinPreProcessorStandard.java:277) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinInfo.createContextFor(MixinInfo.java:1288) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:203) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:437) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:418) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) ... 30 more Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: java.util.List at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.transformMemberReference(MixinPreProcessorStandard.java:791) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.transformMethod(MixinPreProcessorStandard.java:777) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.transform(MixinPreProcessorStandard.java:743) at MC-BOOTSTRAP/org.spongepowered.mixin/org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:307) ... 36 more Caused by: java.lang.ClassNotFoundException: java.util.List ... 40 more

AI 解决方案

🔍 错误分析

1. 🌐 错误翻译


原文:Unsupported class file major version 70
译文:不支持的主版本号为70的类文件

2. 🎯 原因分析


根本原因:Java 版本不兼容。
错误的核心是 Unsupported class file major version 70。这里的 major version 70 对应的是 Java 26。这表明您的 Minecraft 服务器或某个模组是用 Java 26 或更高版本编译的,但您尝试运行它的 Java 运行时环境(JRE)版本过低(很可能是 Java 8、17 或 21),无法解析这个新版本的字节码。

具体上下文:错误发生在启动过程中,SpongePowered Mixin 框架尝试转换 midnightthoughts 模组的 ServerLevelMixin 类时。该模组的核心依赖 java.util.List 的字节码版本过高,导致加载失败,进而引发整个服务器启动崩溃。

3. 💡 解决方案


您需要确保 编译环境运行环境 的 Java 版本匹配或兼容。

  • 检查并升级运行环境 Java 版本

  • 您需要安装 Java 26 或更高版本 来运行此服务器。
    - 推荐版本:请访问 [Oracle JDK](https://www.oracle.com/java/technologies/downloads/) 或 [Adoptium (Eclipse Temurin)](https://adoptium.net/) 下载最新的 JDK(例如 JDK 21, 22 或更新)。
    - 验证版本:在终端或命令提示符中运行 java -version 来检查当前版本。

    • 检查并降级模组或开发环境

    • 如果升级 Java 版本不可行(例如,为了与其他旧版模组兼容),您需要:
      - 联系模组作者:询问 midnightthoughts 模组是否有支持您当前 Java 版本的更新或旧版本。
      - 自行重新编译:如果您是模组开发者或拥有源码,请将项目的编译环境(如 Gradle/Maven 配置)的 targetCompatibilitysourceCompatibility 设置为与您服务器 Java 版本匹配的值(例如 Java 21),然后重新编译模组。

      临时验证步骤

      # 1. 检查当前 Java 版本
      java -version
      
      # 2. 如果版本低于 26,下载并安装新版本的 JDK (例如 JDK 21) 后,使用新版本启动服务器
      # 例如,假设新 JDK 安装在 /path/to/jdk-21
      /path/to/jdk-21/bin/java -jar your_server.jar nogui
      

      4. 🛡️ 预防措施


    • 统一开发与运行环境:在开发模组时,使用 Gradle Toolchains 或明确在构建脚本中设置 sourceCompatibilitytargetCompatibility,确保生成的字节码与目标用户群的运行时环境(通常是 Java 17 或 21)匹配。

    • 仔细阅读模组文档:安装模组前,务必查看其 READMECurseForge/Modrinth 页面说明,了解其支持的 Minecraft 版本Java 版本要求。

    • 使用版本管理工具:考虑使用 [SDKMAN!](https://sdkman.io/) (Linux/macOS) 或 [jEnv](https://www.jenv.be/) 来管理多个 Java 版本,便于在不同项目间切换。