MehVahdJukaar / Moonlight

GNU General Public License v3.0
40 stars 22 forks source link

[🐞]: Crash in DEV environment for Fabric on startup #189

Open SiverDX opened 5 months ago

SiverDX commented 5 months ago

BEFORE CONTINUING:

Version-Loader

1.19.2-fabric

Moonlight Lib Version

moonlight-1.19.2-2.3.6

Issue Detail

https://github.com/SiverDX/Spelunkery Tried using the same version as the original 1.19.2 version and also other versions - nothing works

Forge has no issues Runs fine outside of the DEV environment for both

java.lang.AbstractMethodError: Receiver class net.mehvahdjukaar.moonlight.api.platform.fabric.ClientPlatformHelperImpl$3 does not define or inherit an implementation of the resolved method 'abstract java.util.concurrent.CompletableFuture reload(net.minecraft.server.packs.resources.PreparableReloadListener$PreparationBarrier, net.minecraft.server.packs.resources.ResourceManager, net.minecraft.util.profiling.ProfilerFiller, net.minecraft.util.profiling.ProfilerFiller, java.util.concurrent.Executor, java.util.concurrent.Executor)' of interface net.minecraft.server.packs.resources.PreparableReloadListener.
    at net.minecraft.server.packs.resources.SimpleReloadInstance.method_18368(SimpleReloadInstance.java:38)
    at net.minecraft.server.packs.resources.SimpleReloadInstance.<init>(SimpleReloadInstance.java:50)
    at net.minecraft.server.packs.resources.SimpleReloadInstance.of(SimpleReloadInstance.java:38)
    at net.minecraft.server.packs.resources.SimpleReloadInstance.create(SimpleReloadInstance.java:98)
    at net.minecraft.server.packs.resources.ReloadableResourceManager.createReload(ReloadableResourceManager.java:56)
    at net.minecraft.client.Minecraft.<init>(Minecraft.java:582)
    at net.minecraft.client.main.Main.run(Main.java:184)
    at net.minecraft.client.main.Main.main(Main.java:55)
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470)
    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 net.fabricmc.devlaunchinjector.Main.main(Main.java:86)
    at dev.architectury.transformer.TransformerRuntime.main(TransformerRuntime.java:219)

Is this supposed to be obfuscated?

image

image

Log Attachment

N/A

OPTIONAL: To Produce

No response

OPTIONAL: Which mods are affected?

No response

MehVahdJukaar commented 5 months ago

I have no idea. Seems like an architectury issue

MehVahdJukaar commented 5 months ago

You can also try recompiling yourself and use that jar

cph101 commented 5 months ago

Can confirm I am having the same issue with 1.20. Also using architectury.

cph101 commented 5 months ago

It also sometimes gives a different error after reloading gradle,

Exception in thread "main" java.lang.NoClassDefFoundError: net/minecraft/world/item/BlockItem
    at java.base/java.lang.ClassLoader.defineClass1(Native Method)
    at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1013)
    at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
    at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
    at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    at java.base/java.lang.Class.forName0(Native Method)
    at java.base/java.lang.Class.forName(Class.java:495)
    at java.base/java.lang.Class.forName(Class.java:474)
    at dev.architectury.transformer.handler.TransformerClassWriter.get(TransformerClassWriter.java:77)
    at dev.architectury.transformer.handler.TransformerClassWriter.getCommonSuperClass(TransformerClassWriter.java:56)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.SymbolTable.addMergedType(SymbolTable.java:1202)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.Frame.merge(Frame.java:1299)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.Frame.merge(Frame.java:1197)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.MethodWriter.computeAllFrames(MethodWriter.java:1611)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.MethodWriter.visitMaxs(MethodWriter.java:1547)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.tree.MethodNode.accept(MethodNode.java:767)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.tree.MethodNode.accept(MethodNode.java:647)
    at dev.architectury.transformer.shadowed.impl.org.objectweb.asm.tree.ClassNode.accept(ClassNode.java:451)
    at dev.architectury.transformer.handler.SimpleTransformerHandler.toByteArray(SimpleTransformerHandler.java:231)
    at dev.architectury.transformer.handler.SimpleTransformerHandler.applyTransforms(SimpleTransformerHandler.java:203)
    at dev.architectury.transformer.handler.SimpleTransformerHandler.lambda$handle$1(SimpleTransformerHandler.java:80)
    at dev.architectury.transformer.input.FileView.lambda$handle$1(FileView.java:47)
    at dev.architectury.transformer.input.BaseFileAccess.handle(BaseFileAccess.java:82)
    at dev.architectury.transformer.input.FileView.handle(FileView.java:45)
    at dev.architectury.transformer.input.ForwardingFileView.handle(ForwardingFileView.java:47)
    at dev.architectury.transformer.input.ForwardingFileView.handle(ForwardingFileView.java:47)
    at dev.architectury.transformer.handler.SimpleTransformerHandler.handle(SimpleTransformerHandler.java:78)
    at dev.architectury.transformer.Transform.runTransformers(Transform.java:104)
    at dev.architectury.transformer.Transform.runTransformers(Transform.java:98)
    at dev.architectury.transformer.TransformerRuntime.main(TransformerRuntime.java:165)
Caused by: java.lang.ClassNotFoundException: net.minecraft.world.item.BlockItem
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 34 more
SiverDX commented 5 months ago

i'm not sure if it is related because the case for Spelunkery the fabric version is defined for the common build and fabric build (and the forge variant is only defined for forge)

can't switch them out easily since that creates compile errors and would need some restructuring

then again it doesn't seem like it was a problem before (or now for 1.20.1) so maybe it's some local issue...?

MehVahdJukaar commented 5 months ago

The fact that it says that a Minecraft class is missing is concerning. As for this issue I have no idea, you can clone one of the projects thar use this such as spelunkery and you'll see it works fine

cph101 commented 5 months ago

Strange.. It works until I add the following:

modApi("maven.modrinth:moonlight:jOzdT1LR")
include("maven.modrinth:moonlight:jOzdT1LR")
cph101 commented 5 months ago

Actually, I resolved my issue with:

{ exclude group: 'net.fabricmc', module: 'fabric-loader' }

But forge is still failing