BetterNether

BetterNether

30M Downloads

[Bug] ASM mixin error [Fabric 1.19.2]

xR4YM0ND opened this issue ยท 9 comments

commented

What happened?

Error loading class: org/spongepowered/asm/synthetic/args/Args$4
This error is only shown in the console, not in the latest.log

it happens with another mod in this pack, but i don't know which mod.
When i remove / disable Better Nether , the error is gone.

Error starts at line 419

console.log

BetterNether

7.1.3

BCLib

2.1.6

Fabric API

0.76.0

Fabric Loader

0.14.19

Minecraft

1.19.2

Relevant log output

https://gist.github.com/SpigotDE/23c43932e5d004ac4a4ed1bdf377f904

Other Mods

No response

commented

I have a similar error on the server terminal. disabling mods narrows me down to this specific mod, BetterNether.

commented

What happened?
Error loading class: org/spongepowered/asm/synthetic/args/Args$4

2.1.6
BCLib

0.76.0
Fabric API

0.76.0
Fabric Loader

0.14.19
Minecraft

1.19.2
Relevant log output


[06:58:13] [main/WARN]: Error loading class: org/spongepowered/asm/synthetic/args/Args$4 (java.lang.ClassNotFoundException: org/spongepowered/asm/synthetic/args/Args$4)
org.objectweb.asm.tree.analysis.AnalyzerException: Error at instruction 114: Cannot invoke "org.spongepowered.asm.mixin.transformer.ClassInfo.hasSuperClass(org.spongepowered.asm.mixin.transformer.ClassInfo)" because the return value of "org.spongepowered.asm.mixin.transformer.ClassInfo.forType(org.objectweb.asm.Type, org.spongepowered.asm.mixin.transformer.ClassInfo$TypeLookup)" is null
        at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:273)
        at org.spongepowered.asm.util.Locals.generateLocalVariableTable(Locals.java:859)
        at org.spongepowered.asm.util.Locals.getGeneratedLocalVariableTable(Locals.java:828)
        at org.spongepowered.asm.util.Locals.getLocalVariableAt(Locals.java:782)
        at org.spongepowered.asm.util.Locals.getLocalVariableAt(Locals.java:752)
        at org.spongepowered.asm.util.Locals.getLocalsAt(Locals.java:440)
        at org.spongepowered.asm.util.Locals.getLocalsAt(Locals.java:336)
        at org.spongepowered.asm.mixin.injection.callback.CallbackInjector.preInject(CallbackInjector.java:479)
        at org.spongepowered.asm.mixin.injection.code.Injector.preInject(Injector.java:258)
        at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.preInject(InjectionInfo.java:436)
        at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1371)
        at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1062)
        at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:402)
        at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327)
        at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421)
        at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403)
        at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
        at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234)
        at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202)
        at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422)
        at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323)
        at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218)
        at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
        at net.minecraft.class_5872.<clinit>(class_5872.java:9)
        at net.minecraft.class_5871.method_33968(class_5871.java:20)
        at com.mojang.serialization.codecs.RecordCodecBuilder.mapCodec(RecordCodecBuilder.java:76)
        at net.minecraft.class_5871.<clinit>(class_5871.java:16)
        at net.minecraft.class_2939.<clinit>(class_2939.java:32)
        at net.minecraft.class_5463.<clinit>(class_5463.java:21)
        at net.minecraft.class_5458.method_30572(class_5458.java:66)
        at net.minecraft.class_5458.method_44104(class_5458.java:98)
        at net.minecraft.class_5458.method_30566(class_5458.java:105)
        at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
        at net.minecraft.class_5458.<clinit>(class_5458.java:104)
        at net.minecraft.class_2378.<clinit>(class_2378.java:326)
        at net.minecraft.class_2966.method_12851(class_2966.java:50)
        at net.minecraft.server.Main.main(Main.java:98)
        at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:462)
        at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
        at net.fabricmc.loader.impl.launch.knot.KnotServer.main(KnotServer.java:23)
        at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69)
        at net.fabricmc.installer.ServerLauncher.main(ServerLauncher.java:69)
Caused by: java.lang.NullPointerException: Cannot invoke "org.spongepowered.asm.mixin.transformer.ClassInfo.hasSuperClass(org.spongepowered.asm.mixin.transformer.ClassInfo)" because the return value of "org.spongepowered.asm.mixin.transformer.ClassInfo.forType(org.objectweb.asm.Type, org.spongepowered.asm.mixin.transformer.ClassInfo$TypeLookup)" is null
        at org.spongepowered.asm.util.asm.MixinVerifier.isAssignableFrom(MixinVerifier.java:104)
        at org.objectweb.asm.tree.analysis.SimpleVerifier.isSubTypeOf(SimpleVerifier.java:212)
        at org.objectweb.asm.tree.analysis.BasicVerifier.naryOperation(BasicVerifier.java:400)
        at org.objectweb.asm.tree.analysis.BasicVerifier.naryOperation(BasicVerifier.java:44)
        at org.objectweb.asm.tree.analysis.Frame.executeInvokeInsn(Frame.java:682)
        at org.objectweb.asm.tree.analysis.Frame.execute(Frame.java:609)
        at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:165)
        ... 42 more

commented

Also encountering a similar issue, though the error thrown is:
Error loading class: org/spongepowered/asm/synthetic/args/Args$6
and not:
Error loading class: org/spongepowered/asm/synthetic/args/Args$4

Testing has narrowed down the issue to specifically this mod.

BetterNether

7.1.3

BCLib

2.1.6

Fabric API

0.76.0

Fabric Loader

0.14.21

Minecraft

1.19.2

Relevant log output

[main/WARN]: Error loading class: org/spongepowered/asm/synthetic/args/Args$6 (java.lang.ClassNotFoundException: org/spongepowered/asm/synthetic/args/Args$6)
org.objectweb.asm.tree.analysis.AnalyzerException: Error at instruction 114: Cannot invoke "org.spongepowered.asm.mixin.transformer.ClassInfo.hasSuperClass(org.spongepowered.asm.mixin.transformer.ClassInfo)" because the return value of "org.spongepowered.asm.mixin.transformer.ClassInfo.forType(org.objectweb.asm.Type, org.spongepowered.asm.mixin.transformer.ClassInfo$TypeLookup)" is null
	at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:273)
	at org.spongepowered.asm.util.Locals.generateLocalVariableTable(Locals.java:859)
	at org.spongepowered.asm.util.Locals.getGeneratedLocalVariableTable(Locals.java:828)
	at org.spongepowered.asm.util.Locals.getLocalVariableAt(Locals.java:782)
	at org.spongepowered.asm.util.Locals.getLocalVariableAt(Locals.java:752)
	at org.spongepowered.asm.util.Locals.getLocalsAt(Locals.java:440)
	at org.spongepowered.asm.util.Locals.getLocalsAt(Locals.java:336)
	at org.spongepowered.asm.mixin.injection.callback.CallbackInjector.preInject(CallbackInjector.java:479)
	at org.spongepowered.asm.mixin.injection.code.Injector.preInject(Injector.java:258)
	at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.preInject(InjectionInfo.java:436)
	at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1370)
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1062)
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:402)
	at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:327)
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.apply(TargetClassContext.java:421)
	at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:403)
	at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363)
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:234)
	at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:202)
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:422)
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.tryLoadClass(KnotClassDelegate.java:323)
	at net.fabricmc.loader.impl.launch.knot.KnotClassDelegate.loadClass(KnotClassDelegate.java:218)
	at net.fabricmc.loader.impl.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:112)
	at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
	at net.minecraft.class_5872.<clinit>(class_5872.java:9)
	at net.minecraft.class_5871.method_33968(class_5871.java:20)
	at com.mojang.serialization.codecs.RecordCodecBuilder.mapCodec(RecordCodecBuilder.java:76)
	at net.minecraft.class_5871.<clinit>(class_5871.java:16)
	at net.minecraft.class_2939.<clinit>(class_2939.java:32)
	at net.minecraft.class_5463.<clinit>(class_5463.java:21)
	at net.minecraft.class_5458.method_30572(class_5458.java:66)
	at net.minecraft.class_5458.method_44104(class_5458.java:98)
	at net.minecraft.class_5458.method_30566(class_5458.java:105)
	at java.base/java.util.LinkedHashMap.forEach(LinkedHashMap.java:721)
	at net.minecraft.class_5458.<clinit>(class_5458.java:104)
	at net.minecraft.class_2378.<clinit>(class_2378.java:326)
	at net.minecraft.class_2966.method_12851(class_2966.java:50)
	at net.minecraft.client.main.Main.method_44604(Main.java:161)
	at net.minecraft.client.main.Main.main(Main.java:51)
	at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:468)
	at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
	at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:88)
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:126)
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:71)
Caused by: java.lang.NullPointerException: Cannot invoke "org.spongepowered.asm.mixin.transformer.ClassInfo.hasSuperClass(org.spongepowered.asm.mixin.transformer.ClassInfo)" because the return value of "org.spongepowered.asm.mixin.transformer.ClassInfo.forType(org.objectweb.asm.Type, org.spongepowered.asm.mixin.transformer.ClassInfo$TypeLookup)" is null
	at org.spongepowered.asm.util.asm.MixinVerifier.isAssignableFrom(MixinVerifier.java:104)
	at org.objectweb.asm.tree.analysis.SimpleVerifier.isSubTypeOf(SimpleVerifier.java:212)
	at org.objectweb.asm.tree.analysis.BasicVerifier.naryOperation(BasicVerifier.java:400)
	at org.objectweb.asm.tree.analysis.BasicVerifier.naryOperation(BasicVerifier.java:44)
	at org.objectweb.asm.tree.analysis.Frame.executeInvokeInsn(Frame.java:682)
	at org.objectweb.asm.tree.analysis.Frame.execute(Frame.java:609)
	at org.objectweb.asm.tree.analysis.Analyzer.analyze(Analyzer.java:165)
	... 44 more
commented

Does it happen with just betternether and bclib?

commented

Same mods are:

  • Patchouli
  • Lithium
  • Enhanced Celestials
  • CorgiLib
  • GeckoLib
commented

Not for me.

But you know how it is when you have 200 mods ....

commented

I have around 20 mods, but this is the only one throwing this error

Here's my list of mods:
You're in grave danger
Worldedit
Wildlife + Geckolib
Twilight Forest
Patchouli
MCDW, MCDAR, MCDA (Minecraft dungeon series)
Lithium
Flan
Falling Tree
Fabric Tailor
Fabric Homes
Enhanced Celestials + Corgilib
Eldritch mobs
Create
Companion

All in 1.19.2 version, hope this helps

commented

@quiqueck I've done some more testing.
It appears to be related to Create; error disappears when either mod is removed.

Recreated the error under the following conditions:

bclib 2.1.7
betternether 7.1.4
create 0.5.0.i-1017+1.19.2
fabric-api 0.76.0+1.19.2
fabricloader 0.14.21
java 17
minecraft 1.19.2

Full log:
latest.log

commented

So, it's a conflict between mods. Thanks for confirming this! @rinebergc