Low-Drag-MC / LDLib-Architectury

GNU General Public License v3.0
12 stars 13 forks source link

Dedicated server crash in conjuction with KubeJS #24

Closed heisluft closed 2 days ago

heisluft commented 5 months ago

Whenever I start a dedicated server with ldlib version 1.0.25.e in conjuction with kubejs, the server crashes during mod construction with the following exception

java.lang.NoClassDefFoundError: com/mojang/math/Vector3d
        at java.lang.Class.getDeclaredConstructors0(Native Method) ~[?:?]
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:3373) ~[?:?]
        at java.lang.Class.getConstructors(Class.java:2060) ~[?:?]
        at dev.latvian.mods.rhino.JavaMembers.getAccessibleConstructors(JavaMembers.java:656) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.JavaMembers.reflect(JavaMembers.java:645) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.JavaMembers.<init>(JavaMembers.java:261) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.JavaMembers.lookupClass(JavaMembers.java:208) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.NativeJavaClass.initMembers(NativeJavaClass.java:117) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.NativeJavaObject.<init>(NativeJavaObject.java:592) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.NativeJavaClass.<init>(NativeJavaClass.java:111) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.NativeJavaClass.<init>(NativeJavaClass.java:107) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.rhino.Context.addToScope(Context.java:1052) ~[rhino-forge-2001.2.2-build.18.jar%23445!/:2001.2.2-build.18]
        at dev.latvian.mods.kubejs.script.BindingsEvent.add(BindingsEvent.java:20) ~[kubejs-forge-2001.6.4-build.138.jar%23406!/:2001.6.4-build.138]
        at com.lowdragmc.lowdraglib.kjs.LDLibKubeJSPlugin.registerBindings(LDLibKubeJSPlugin.java:69) ~[ldlib-forge-1.19.2-1.0.25.e.jar%23409!/:?]
        at dev.latvian.mods.kubejs.script.ScriptManager.load(ScriptManager.java:186) ~[kubejs-forge-2001.6.4-build.138.jar%23406!/:2001.6.4-build.138]
        at dev.latvian.mods.kubejs.script.ScriptManager.reload(ScriptManager.java:78) ~[kubejs-forge-2001.6.4-build.138.jar%23406!/:2001.6.4-build.138]
        at dev.latvian.mods.kubejs.KubeJS.<init>(KubeJS.java:137) ~[kubejs-forge-2001.6.4-build.138.jar%23406!/:2001.6.4-build.138]
        at dev.latvian.mods.kubejs.forge.KubeJSForge.<init>(KubeJSForge.java:51) ~[kubejs-forge-2001.6.4-build.138.jar%23406!/:2001.6.4-build.138]
        at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
        at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) ~[?:?]
        at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
        at java.lang.reflect.Constructor.newInstance(Constructor.java:480) ~[?:?]
        at net.minecraftforge.fml.javafmlmod.FMLModContainer.constructMod(FMLModContainer.java:70) ~[javafmllanguage-1.20.1-47.2.21.jar%23493!/:?]
        at net.minecraftforge.fml.ModContainer.lambda$buildTransitionHandler$4(ModContainer.java:124) ~[fmlcore-1.20.1-47.2.21.jar%23492!/:?]
        at java.util.concurrent.CompletableFuture$AsyncRun.run(CompletableFuture.java:1804) ~[?:?]
        at java.util.concurrent.CompletableFuture$AsyncRun.exec(CompletableFuture.java:1796) ~[?:?]
        at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:373) ~[?:?]
        at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1182) ~[?:?]
        at java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1655) ~[?:?]
        at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1622) ~[?:?]
        at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165) ~[?:?]
Caused by: java.lang.ClassNotFoundException: com.mojang.math.Vector3d
        at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:141) ~[securejarhandler-2.1.10.jar:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
        ... 32 more

It seems like the kubejs plugin calls a function that tries to load a client class https://github.com/Low-Drag-MC/LDLib-Architectury/blob/51fd55784b7159a758b86dff477cdfc1175fe2c1/common/src/main/java/com/lowdragmc/lowdraglib/kjs/LDLibKubeJSPlugin.java#L69

Yefancy commented 2 days ago

Vector3f is not a client only class