[Bug] [Server] BetterEnd crashes on Fabric Loader 0.15.0
pavog opened this issue ยท 8 comments
What happened?
On my server with Fabric 1.20.1 (Loader 0.15.0) I installed:
- BetterEnd 4.0.10
- Fabric API 0.91.0 1.20.1
- Bclib 3.0.13
The server crashes on startup with the following error message:
Suppressed: java.lang.NoSuchFieldError: CLENT_CONFIG
Here is the full server log: https://mclo.gs/AEOrhiK
The problem is that the mod tries to load the variable CLENT_CONFIG
which is annotated with @Environment(value = EnvType.CLIENT)
. See here. This means that it should only be available if the mod is running in a client environment.
However, BetterEnd also loads this variable when running on a server.
With older versions of Fabric loader (0.14.25 for example) this was not a problem.
But in 0.15.0 a bug with this annotation has been fixed that makes this variable now only available in a client environment.
See:
BetterEnd
4.0.10
BCLib
3.0.13
Fabric API
0.91.0
Fabric Loader
0.15.0
Minecraft
1.20.1
Relevant log output
[00:30:43] [main/ERROR]: Failed to start the minecraft server
java.lang.RuntimeException: Could not execute entrypoint stage 'main' due to errors, provided by 'bclib'!
at net.fabricmc.loader.impl.FabricLoaderImpl.lambda$invokeEntrypoints$2(FabricLoaderImpl.java:388) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.util.ExceptionUtil.gatherExceptions(ExceptionUtil.java:33) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.FabricLoaderImpl.invokeEntrypoints(FabricLoaderImpl.java:386) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.game.minecraft.Hooks.startServer(Hooks.java:63) ~[fabric-loader-0.15.0.jar:?]
at net.minecraft.server.Main.main(Main.java:112) ~[server-intermediary.jar:?]
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotServer.main(KnotServer.java:23) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69) ~[fabric-loader-0.15.0.jar:?]
Suppressed: java.lang.NoSuchFieldError: CLENT_CONFIG
at org.betterx.betterend.config.Configs.<clinit>(Configs.java:22) ~[better-end-4.0.10.jar:?]
at org.betterx.betterend.registry.EndBlocks.<clinit>(EndBlocks.java:29) ~[better-end-4.0.10.jar:?]
at org.betterx.betterend.registry.EndBlockEntities.<clinit>(EndBlockEntities.java:17) ~[better-end-4.0.10.jar:?]
at org.betterx.betterend.BetterEnd.onInitialize(BetterEnd.java:46) ~[better-end-4.0.10.jar:?]
at net.fabricmc.loader.impl.FabricLoaderImpl.invokeEntrypoints(FabricLoaderImpl.java:384) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.game.minecraft.Hooks.startServer(Hooks.java:63) ~[fabric-loader-0.15.0.jar:?]
at net.minecraft.server.Main.main(Main.java:112) ~[server-intermediary.jar:?]
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotServer.main(KnotServer.java:23) ~[fabric-loader-0.15.0.jar:?]
at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:69) ~[fabric-loader-0.15.0.jar:?]
Caused by: java.lang.NoSuchFieldError: CLIENT_CONFIG
at org.betterx.bclib.registry.PresetsRegistry.register(PresetsRegistry.java:17) ~[bclib-3.0.13.jar:?]
at org.betterx.bclib.BCLib.onInitialize(BCLib.java:73) ~[bclib-3.0.13.jar:?]
at net.fabricmc.loader.impl.FabricLoaderImpl.invokeEntrypoints(FabricLoaderImpl.java:384) ~[fabric-loader-0.15.0.jar:?]
... 6 more
Other Mods
None. Only:
- bclib-3.0.13.jar
- better-end-4.0.10.jar
- fabric-api-0.91.0+1.20.1.jar
after "fixing" the issue by commenting out the @Environment(Envtype.CLIENT) in bclib's Configs.java, betterend is not able to find net.minecraft.client.resources.model.UnbakedModel while launching on a server
This seems to be a duplicate of quiqueck/BCLib#136 (comment)
Duplicate of quiqueck/BCLib#136.
Downgrade your Fabric Loader (Fabric Loader is NOT Fabric API) to 0.14.25.
BCLib, which is what Better End / Better Nether depends on (as a library) is currently incompatible with Fabric Loader versions 0.15 and up.
You may either downgrade until fixed officially or make use of a fork that claims to fix the issue so far (use at your own risk)
Duplicate of quiqueck/BCLib#136