Ignore Classes That Are Too New
gudenau opened this issue · 1 comments
gudenau commented
When trying to run with Mixins on Java 17 (don't ask) it freaks out and causes several base classes to fail to load because the class version is too new.
It would be best to ignore this, especially since they are part of the STD lib and not touch them. In this case it would allow for Mixin to continue to work with new JVM versions even if it is discontinued in the future.
Example log output:
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/util/Map$Entry (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/util/Map$Entry (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/util/Map$Entry (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/util/Map$Entry (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:50] [main/WARN] (mixin) Error loading class: java/lang/invoke/MethodHandles$Lookup (java.lang.IllegalArgumentException: Unsupported class file major version 61)
[17:22:51] [main/WARN] (mixin) Error loading class: java/util/Collection (java.lang.IllegalArgumentException: Unsupported class file major version 61)
Exception in thread "main" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:228)
at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:139)
at net.fabricmc.loader.launch.knot.KnotClient.main(KnotClient.java:27)
at net.fabricmc.devlaunchinjector.Main.main(Main.java:86)
Caused by: java.lang.reflect.InvocationTargetException
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
... 3 more
Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:208)
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:178)
at org.spongepowered.asm.mixin.transformer.FabricMixinTransformerProxy.transformClassBytes(FabricMixinTransformerProxy.java:23)
at net.gudenau.minecraft.tps.hacks.Bootstrap$CustomTransformer.transformClassBytes(Bootstrap.java:143)
at net.fabricmc.loader.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:157)
at net.fabricmc.loader.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:150)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
at net.minecraft.client.main.Main.main(Main.java:118)
... 8 more
Caused by: org.spongepowered.asm.mixin.transformer.throwables.MixinPreProcessorException: Attach error for fabric-lifecycle-events-v1.mixins.json:WorldMixin during activity: [Transform -> Method onPurgeRemovedBlockEntities(Ljava/util/List;Ljava/util/Collection;)Z -> INVOKEINTERFACE -> java/util/Collection::iterator()Ljava/util/Iterator;]
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:300)
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.createContextFor(MixinPreProcessorStandard.java:264)
at org.spongepowered.asm.mixin.transformer.MixinInfo.createContextFor(MixinInfo.java:1272)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:287)
at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:345)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:569)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:351)
... 16 more
Caused by: java.lang.RuntimeException: java.lang.ClassNotFoundException: java.util.Collection
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.transformMemberReference(MixinPreProcessorStandard.java:768)
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.transformMethod(MixinPreProcessorStandard.java:754)
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.transform(MixinPreProcessorStandard.java:720)
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:294)
... 22 more
Caused by: java.lang.ClassNotFoundException: java.util.Collection
... 26 more
modmuss50 commented
This has already been fixed, loader 0.11.2 contains the fix.