Crashes on start
ignamiranda opened this issue ยท 7 comments
Using just this mod and the latest Fabric API on 1.16.5, this mod fails to launch.
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)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:226)
... 2 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.fabricmc.loader.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:157)
at net.fabricmc.loader.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:150)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
at net.minecraft.class_2370.onChange(class_2370.java:1058)
at net.minecraft.class_2370.handler$zda000$set(class_2370.java:1053)
at net.minecraft.class_2370.method_10273(class_2370.java:72)
at net.minecraft.class_2370.method_10272(class_2370.java:103)
at net.minecraft.class_2378.method_10227(class_2378.java:292)
at net.minecraft.class_2378.method_29108(class_2378.java:279)
at net.minecraft.class_2378.method_10247(class_2378.java:271)
at net.minecraft.class_2378.<clinit>(class_2378.java:152)
at net.minecraft.class_2966.method_12851(class_2966.java:42)
at net.minecraft.client.main.Main.main(Main.java:137)
... 7 more
Caused by: org.spongepowered.asm.mixin.throwables.MixinApplyError: Mixin [taterzens.mixins.json:RegistrySyncManagerMixin_TaterzenSyncDisabler] from phase [DEFAULT] in config [taterzens.mixins.json] FAILED during APPLY
at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinError(MixinProcessor.java:642)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.handleMixinApplyError(MixinProcessor.java:594)
at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:356)
... 23 more
Caused by: org.spongepowered.asm.mixin.injection.throwables.InvalidInjectionException: Critical injection failure: @ModifyVariable annotation on removeTaterzenFromSync could not find any targets matching 'createPacket()Lnet/minecraft/network/Packet;' in net.fabricmc.fabric.impl.registry.sync.RegistrySyncManager. Using refmap taterzens-refmap.json [PREINJECT Applicator Phase -> taterzens.mixins.json:RegistrySyncManagerMixin_TaterzenSyncDisabler -> Prepare Injections -> -> localvar$zdl000$removeTaterzenFromSync(Lnet/minecraft/class_2487;)Lnet/minecraft/class_2487; -> Parse]
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.findMethods(InjectionInfo.java:572)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.readAnnotation(InjectionInfo.java:288)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:275)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.<init>(InjectionInfo.java:267)
at org.spongepowered.asm.mixin.injection.struct.ModifyVariableInjectionInfo.<init>(ModifyVariableInjectionInfo.java:45)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo$InjectorEntry.create(InjectionInfo.java:140)
at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.parse(InjectionInfo.java:624)
at org.spongepowered.asm.mixin.transformer.MixinTargetContext.prepareInjections(MixinTargetContext.java:1247)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.prepareInjections(MixinApplicatorStandard.java:1033)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:388)
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:320)
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)
... 23 more```
Huh, sounds like the method in FAPI was changed. Doesn't sound too much of a hassle to fix. Meanwhile you could use older fapi.
That's the version I'm using with Fabric Loader 0.11.2 and Taterzens 0.1.0. I tried it in different launchers to see if it was a weird exception but it crashes in the vanilla launcher, MultiMC and GDLauncher.
Looking at this more, it's production-only bug, which is even worse.
I'm looking at the PolyMC as it has a similar feature, hopefully I can get some more info on how they have done it.
Release 0.1.1 disables the registry sync disabler mixin, so this shouldn't occur anymore. Hopefully I can bring the feature back soon without crash.