Fabric Language Scala

Fabric Language Scala

2M Downloads

1.15.2 server crashes on load with this mod

RypoFalem opened this issue ยท 3 comments

commented

I wasn't sure where to report this exactly but I can reproduce it using fabric-language-scala so I'll post it here and hopefully this will end up in the right place.

Starting a 1.15.2 server with only fabric-language-scala 0.3.1.11 and no other mods causes the server to crash. As best as I can tell there's an issue with the wrong log4j being present at runtime.

I tried building fabric-language-scala with updated yarn and loader dependencies

yarn_mappings=1.15.2+build.15
loader_version=0.7.10+build.191

but that had the same issue.

[20:03:52] [main/INFO]: Loading for game Minecraft 1.15.2
[20:03:53] [main/INFO]: [FabricLoader] Loading 3 mods: [email protected], [email protected]+build.191, [email protected]
[20:03:53] [main/WARN]: Mod `fabric-language-scala` (0.3.1.11) uses more dot-separated version components than SemVer allows; support for this is currently not guaranteed.
[20:03:59] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8 Source=file:/E:/Games/Minecraft/Fabric%20server/fabric-server-launch.jar Service=Knot/Fabric Env=SERVER
Exception in thread "main" java.lang.RuntimeException: Failed to setup Fabric server environment!
        at net.fabricmc.loader.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:51)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: An exception occurred when launching the server!
        at net.fabricmc.loader.launch.server.FabricServerLauncher.setup(FabricServerLauncher.java:107)
        at net.fabricmc.loader.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:49)
Caused by: java.lang.RuntimeException: An exception occurred when launching the server!
        at net.fabricmc.loader.launch.server.FabricServerLauncher.launch(FabricServerLauncher.java:63)
        at net.fabricmc.loader.launch.server.FabricServerLauncher.setup(FabricServerLauncher.java:105)
        ... 1 more
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.launch.server.FabricServerLauncher.launch(FabricServerLauncher.java:61)
        ... 2 more
Caused by: java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
        at net.fabricmc.loader.game.MinecraftGameProvider.launch(MinecraftGameProvider.java:194)
        at net.fabricmc.loader.launch.knot.Knot.init(Knot.java:138)
        at net.fabricmc.loader.launch.knot.KnotServer.main(KnotServer.java:26)
        ... 7 more
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:192)
        ... 9 more
Caused by: java.lang.IllegalAccessError: Class org/apache/logging/log4j/message/ReusableMessageFactory illegally accessing "package private" member of class org/apache/logging/log4j/message/ReusableParameterizedMessage
        at org.apache.logging.log4j.message.ReusableMessageFactory.getParameterized(ReusableMessageFactory.java:58)
        at org.apache.logging.log4j.message.ReusableMessageFactory.newMessage(ReusableMessageFactory.java:125)
        at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2016)
        at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1892)
        at org.apache.logging.log4j.spi.AbstractLogger.warn(AbstractLogger.java:2659)
        at net.minecraft.class_2170.method_9237(class_2170.java:212)
        at net.minecraft.class_2170$$Lambda$1949.000000002A2A8A50.ambiguous(Unknown Source)
        at com.mojang.brigadier.tree.CommandNode.findAmbiguities(CommandNode.java:111)
        at com.mojang.brigadier.tree.CommandNode.findAmbiguities(CommandNode.java:116)
        at com.mojang.brigadier.CommandDispatcher.findAmbiguities(CommandDispatcher.java:693)
        at net.minecraft.class_2170.<init>(class_2170.java:211)
        at net.minecraft.class_3176.<init>(class_3176.java:80)
        at net.minecraft.server.MinecraftServer.main(MinecraftServer.java:941)
        ... 14 more
commented

Looks like the two logger classes get loaded by two different class loaders. would be a bit difficult to debug.

commented

I guess not using the logger is one way to fix it. I apologize if it's bad etiquette to close this.

commented

In fact this looks like a fabric loader issue.