Traincraft-5 icon indicating copy to clipboard operation
Traincraft-5 copied to clipboard

Fatal crash on startup server-side

Open Yorick1234 opened this issue 3 years ago • 9 comments

Hi,

Sorry to bother, but I keep getting crashes on my server starting up (not client, works fine there). I'm using version 5.0.4. Deleting the mod makes the server run fine, however. I have provided the logs:

crash-2022-03-14_00.12.15-server.txt fml-server-latest.log latest.log

or:


> `[00:12:15] [Server thread/ERROR] [FML/]: The following problems were captured during this phase
> [00:12:15] [Server thread/ERROR] [FML/]: Caught exception from traincraft
> java.lang.NoClassDefFoundError: net/minecraft/client/gui/inventory/GuiContainer
> 	at train.Traincraft.postInit(Traincraft.java:271) ~[Traincraft.class:?]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_321]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532) ~[FMLModContainer.class:?]
> 	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) ~[?:?]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?]
> 	at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[LoadController.class:?]
> 	at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[LoadController.class:?]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_321]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?]
> 	at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?]
> 	at cpw.mods.fml.common.Loader.initializeMods(Loader.java:742) [Loader.class:?]
> 	at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:97) [FMLServerHandler.class:?]
> 	at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:319) [FMLCommonHandler.class:?]
> 	at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:210) [lt.class:?]
> 	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:387) [MinecraftServer.class:?]
> 	at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685) [li.class:?]
> Caused by: java.lang.ClassNotFoundException: net.minecraft.client.gui.inventory.GuiContainer
> 	at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101) ~[launchwrapper-1.12.jar:?]
> 	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_321]
> 	... 32 more
> [00:12:15] [Server thread/ERROR] [FML/]: Caught exception from trainsinmotion
> java.lang.NoClassDefFoundError: net/minecraft/client/gui/inventory/GuiContainer
> 	at ebf.tim.TrainsInMotion.postinit(TrainsInMotion.java:203) ~[TrainsInMotion.class:?]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_321]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532) ~[FMLModContainer.class:?]
> 	at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source) ~[?:?]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?]
> 	at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212) ~[LoadController.class:?]
> 	at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190) ~[LoadController.class:?]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_321]
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_321]
> 	at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304) ~[guava-17.0.jar:?]
> 	at com.google.common.eventbus.EventBus.post(EventBus.java:275) ~[guava-17.0.jar:?]
> 	at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119) [LoadController.class:?]
> 	at cpw.mods.fml.common.Loader.initializeMods(Loader.java:742) [Loader.class:?]
> 	at cpw.mods.fml.server.FMLServerHandler.finishServerLoading(FMLServerHandler.java:97) [FMLServerHandler.class:?]
> 	at cpw.mods.fml.common.FMLCommonHandler.onServerStarted(FMLCommonHandler.java:319) [FMLCommonHandler.class:?]
> 	at net.minecraft.server.dedicated.DedicatedServer.func_71197_b(DedicatedServer.java:210) [lt.class:?]
> 	at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:387) [MinecraftServer.class:?]
> 	at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685) [li.class:?]
> Caused by: java.lang.ClassNotFoundException: net.minecraft.client.gui.inventory.GuiContainer
> 	at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:101) ~[launchwrapper-1.12.jar:?]
> 	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_321]
> 	at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_321]
> 	... 32 more`

If there is any solution in this matter, please let me know. Thank you for your excellent work o n this excellent mod. I really, really like it so much (although a hefty package - the 4.4.1 version)!

Yorick1234 avatar Mar 13 '22 23:03 Yorick1234

it should be fixed on the newer git builds. If you go to the actions tab, pick a build, it will be in the artifacts. it will be a zip file, just extract that, don't use the src file if it has one.

I was planning to hold off on updating the CF builds of 5.0 till i have 1.12 working properly, since there are some things that are getting ported back and forth between the builds. (there's git builds for 1.12 too, same place)

EternalBlueFlame avatar Mar 14 '22 00:03 EternalBlueFlame

Thank you for your answer.

I tried two 1.7-TiM builds over there, the two most recent (239 and 234).

But I receive the same issue during startup of the server (client meanwhile running fine) and the same error log, unfortunatly.

I will test more extensively soon.

Yorick1234 avatar Mar 14 '22 00:03 Yorick1234

interesting, thanks for the feedback, i'll have to stick this on my priority list to get fixed.

EternalBlueFlame avatar Mar 14 '22 01:03 EternalBlueFlame

I'll provide new logs later on. I really want it to work... 😃

Yorick1234 avatar Mar 14 '22 08:03 Yorick1234

So, I've done extensive testing. I pinpointed the error; a mod conflict with NEI.

Very (!) long story short (yes, every step and log-file was here but I deleted it to save you some of your lifetime :-) ): using TrainCraft 5.0.4 build 239 (the latest on the git) on FML (server version 10.13.4.1614), clean install (no previous world, no configs, no single other mod): working fine at server startup.

Add in 'Not Enough Items' v. 1.0.5.120-uni , plus it's dependence 'CodeChickenCore' v. 1.0.7.48-uni (plus FML auto downloaded 'CodeChickenLib' v. 1.1.3.141-uni) makes the error appear. I have included logs: fml-junk-earlystartup.log fml-server-latest.log latest.log crash-2022-03-14_13.29.05-server.txt

FYI, I got my NEI from: https://www.curseforge.com/minecraft/mc-mods/notenoughitems/files/all?filter-game-version=2020709689%3A4449 and CodeChickenCre from: https://www.curseforge.com/minecraft/mc-mods/codechickencore/files/all?filter-game-version=2020709689%3A4449 (They are the latest release builds and pretty popular in usage)

I am not sure if this is helpfull to you. Please don't think I am pressuring you in any way into fixing this issue. But if a solution would come up one day, to have a server-capable TrainCraft 5 build for MC 1.7.10 with NEI loaded, I'm all ears! We dig trains so very much over at our server, have done so for many years now: TrainCraft 5 would be the best of them all at this stage (better then stevescarts, Railcraft, ImmersiveRailroading, Better Trains, all the carts addons, Zora No Desha or Traincraft 4). TC5 looked so good in single player test.

Anyways, if you want you can close this ticket. But if possible, I'd like to still get a reply (headsup) if a fix would arise one day, if not too much asked.

Thank you for all your work, creativity and your replies so far. Greetings from us, a bunch of adults playing heavily modded MC for many years now, over in the Netherlands.

Yorick1234 avatar Mar 14 '22 12:03 Yorick1234

P.S. I startup my server using arguments:

java -Xmx4G -Xms4G -Xmn1G -XX:+UseG1GC -Dsun.rmi.dgc.server.gcInterval=2147483646 -XX:+UnlockExperimentalVMOptions -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32M -Dfml.queryResult=confirm -Duser.language=en -jar forge-1.7.10-10.13.4.1614-1.7.10-universal.jar nogui
Pause

changing this into:

java -Xmx4G -Xms4G -Xmn1G -jar forge-1.7.10-10.13.4.1614-1.7.10-universal.jar nogui
Pause

made no difference either.

Yorick1234 avatar Mar 14 '22 12:03 Yorick1234

Hi there! From my experience is NEI only client side, I believe that JEI is both client side and server side, but that depends. In theory NEI should work without the server side mod.

chiel1112 avatar Mar 14 '22 13:03 chiel1112

I will do (try) so; to have no NEI on the server running.

Thank you for your answer!

Yorick1234 avatar Mar 14 '22 13:03 Yorick1234

That seemed to have worked indeed, at the expense of another mod.

Using my modpack, I deleted NEI plus addons (ThaumicNEIPlugin, NEIaddons, NEIIntegration, NotEnoughEnergistics) from the test-server and added TC5-239, but was errored due to the mod 'Translocators' ( https://www.curseforge.com/minecraft/mc-mods/translocators ), which has a hard dependancy for NEI to run server-side.

I deleted 'Translocator 1.1.2.16' from server too; the server does startup and run fine.

Starting up my client and logging in to said (test-)server runs ok, with full NEI support. But no translocators-mod capability if connected to test-server (obviously, as it has needs server-side resources; it's more then GUI functionality as what NEI does).

Hoping my wife is ok with 'Translocators' not function anymore, as she is fond of them. :-S If I run into marital problems from this point on, I'll let you know... :-D

Yorick1234 avatar Mar 14 '22 13:03 Yorick1234