![ServerSync](https://media.forgecdn.net/avatars/thumbnails/254/696/256/256/637199290945083080.png)
NoSuch Issues
ValeTheVioletMote opened this issue ยท 3 comments
I've built the latest serversync. But whenever I add mods, they always crash with essentially the same error - Exception in Server Tick Loop, caused by "NoSuchMethodError" or "NoSuchFieldError". These mods only have on dependency: Forge. Doesn't server sync have forge by default? If not, how do I apply it?
Thanks.
Also, unrelated question - is there a way I can set the launch properties like I'd normally add to the java minecraft_server. jar -blah blah blah?
Error Log
`Description: Exception in server tick loop
cpw.mods.fml.common.LoaderException: java.lang.NoSuchFieldError: field_78031_c
at cpw.mods.fml.common.LoadController.transition(LoadController.java:163)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:535)
at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:88)
at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:314)
at net.minecraft.server.dedicated.DedicatedServer.startServer(DedicatedServer.java:117)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:387)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)
Caused by: java.lang.NoSuchFieldError: field_78031_c
at vazkii.heraldry.content.ItemHeraldry.(ItemHeraldry.java:32)
at vazkii.heraldry.core.proxy.CommonProxy.initContent(CommonProxy.java:37)
at vazkii.heraldry.core.proxy.CommonProxy.preInit(CommonProxy.java:28)
`
example 1 with CraftHeraldry ^
`Description: Exception in server tick loop
cpw.mods.fml.common.LoaderException: java.lang.NoSuchMethodError: twilightforest.block.BlockTFLog.func_149711_c(F)Lnet/m$
at cpw.mods.fml.common.LoadController.transition(LoadController.java:163)
at cpw.mods.fml.common.Loader.preinitializeMods(Loader.java:535)
at cpw.mods.fml.server.FMLServerHandler.beginServerLoading(FMLServerHandler.java:88)
at cpw.mods.fml.common.FMLCommonHandler.onServerStart(FMLCommonHandler.java:314)
at net.minecraft.server.dedicated.DedicatedServer.startServer(DedicatedServer.java:117)
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:387)
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:685)
Caused by: java.lang.NoSuchMethodError: twilightforest.block.BlockTFLog.func_149711_c(F)Lnet/minecraft/block/Block;
at twilightforest.block.BlockTFLog.(BlockTFLog.java:34)
at twilightforest.block.TFBlocks.registerBlocks(TFBlocks.java:75)
at twilightforest.TwilightForestMod.preInit(TwilightForestMod.java:221)
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)
`
Example 2 with Twilight Forest ^
This error log has no reference to Serversync, does the issue go away if you remove Serversync?
When running a basic test I am unable to reproduce this using craft heraldry or twilight-forest.
Serversync and Forge are two seperate entities, Serversync itself only uses forge to tell it if it's running on a server or not.
I'm guessing you are running Forge 1.7.10 judging by the call to cpw.mods, are you using the 1.7.10 version of Serversync?
To get a better picture of this user story:
- You have installed forge as a server
- Dropped Serversync into the mods folder
- Added some other mods
- Server is crashing when starting at this point?
I would suggest running your Forge server without any mods to make sure it has not corrupted it's install somehow.
What I need to test this:
- Which version of minecraft/Forge you are using
- The mod list you are using with Serversync (shouldn't matter as Serversync does not interact with minecraft in any way really)
Serversync does not handle opening/closing of your server/client. That is done manually.
Launch Properties
To add launch properties to your server/client you would do as you normally do:
Client
Open the minecraft launcher and click edit profile, add to JVM arguments.
Server
Open your server start.bat and add your JVM arguments (java -Xms2g -Xmx2g -jar %forge% nogui)
Use this if you like
If you meant add launch properties to serversync then:
- Create a start_serversync.bat (or your own script file)
- call the JVM with Java
- pass in any arguments you wish (-xmx2G,-xms2G etc)
- pass in the runnable jar flag -jar
- pass in the path to serversync*.jar
- should look like: java -args -jar serversync-1.7.10.jar
As for the server side of things, that will inherit whichever properties are given to the JVM when you start your Forge server.
I think this is where I've made a mistake: I didn't realize serversync runs as a mod. When I used ./gradlew runserver, it generated its own server in ServerSync/run/. I placed my mods in that server, thinking that ServerSync only runs on its own generated server. I've been launching the server with ./gradlew runserver which does appear to attempt to use forge (seen below), and which is also why I inquired on how to add launch options.
[02:00:38] [Server thread/ERROR]:
mcp{9.05} Minecraft Coder Pack Unloaded->Constructed->Pre-initialized
FML{7.10.141.1403} Forge Mod Loader Unloaded->Constructed->Pre-initialized
Forge{10.13.3.1403} Minecraft Forge Unloaded->Constructed->Pre-initialized
serversync{2.6.1} Server Sync Unloaded->Constructed->Pre-initialized
TwilightForest{2.3.7} The Twilight Forest Unloaded->Constructed->Errored
[02:00:38] [Server thread/ERROR]: The following problems were captured during this phase
[02:00:38] [Server thread/ERROR]: Caught exception from TwilightForest
java.lang.NoSuchMethodError: twilightforest.block.BlockTFLog.func_149711_c(F)Lnet/minecraft/block/Block;
How do I properly install serversync? I.e., what do I need to move into my forge server? Do I merge the contents of run/ with my server and add the contents of publish/ (serversync.jar) into my mods folder?