Incompatibility with the ReplayMod
Johni0702 opened this issue · 2 comments
Just RM (2.1.4) + JEID (1.0.2-26) will cause one of RM's mixins to fail with:
Mixin apply failed mixins.replay.replaymod.json:MixinRenderArrow -> net.minecraft.client.renderer.entity.RenderArrow: org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException PROTECTED overwrite method <init> in mixins.replay.replaymod.json:MixinRenderArrow cannot reduce visibiliy of PUBLIC target method
org.spongepowered.asm.mixin.transformer.throwables.InvalidMixinException: PROTECTED overwrite method <init> in mixins.replay.replaymod.json:MixinRenderArrow cannot reduce visibiliy of PUBLIC target method
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.conformVisibility(MixinPreProcessorStandard.java:430) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachMethod(MixinPreProcessorStandard.java:532) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attachMethods(MixinPreProcessorStandard.java:309) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.attach(MixinPreProcessorStandard.java:261) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinPreProcessorStandard.createContextFor(MixinPreProcessorStandard.java:241) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinInfo.createContextFor(MixinInfo.java:1144) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:268) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:353) ~[JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinTransformer.apply(MixinTransformer.java:724) [JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinTransformer.applyMixins(MixinTransformer.java:703) [JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:509) [JustEnoughIDs-1.0.2-26.jar:?]
at org.spongepowered.asm.mixin.transformer.Proxy.transform(Proxy.java:72) [JustEnoughIDs-1.0.2-26.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) [launchwrapper-1.12.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) [launchwrapper-1.12.jar:?]
[…]
at java.lang.ClassLoader.loadClass(ClassLoader.java:357) [?:1.8.0_181]
at net.minecraft.client.renderer.entity.RenderManager.<init>(RenderManager.java:193) [bzf.class:?]
at net.minecraft.client.Minecraft.func_71384_a(Minecraft.java:517) [bib.class:?]
at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:377) [bib.class:?]
at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
[…]
This may very well be RM's fault. I haven't looked further into it. I just saw that JEID is doing something with Mixin which I don't fully understand the implications of and RM works fine without JEID (RM 2.1.4 bundles Mixins 7.5 but also works when manually built with 7.11), so I figured I might as well ask.
It seems like you're doing something with with a protected method that's public in the RenderArrow class? I know that's not from us at least since JEID doesn't touch rendering, but that's what the log says about Mixins currently. Maybe make the constructor in your MixinRenderArrow class public and see if it works?