Jump to content

[1.8] Server compatibility problem


DerT0bey

Recommended Posts

Hey,

 

i tested my mod with a server and got following error after the player died.

[17:37:29] [server thread/ERROR] [FML]: Exception caught during firing event net.minecraftforge.event.entity.living.LivingDeathEvent@6d74c79b:
java.lang.NoClassDefFoundError: net/minecraft/client/Minecraft
at de.toby.tobymodxp.handler.ForgeEventHandler.playerDied(ForgeEventHandler.java:29) ~[ForgeEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_9_ForgeEventHandler_playerDied_LivingDeathEvent.invoke(.dynamic) ~[?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55) ~[ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138) [EventBus.class:?]
at net.minecraftforge.common.ForgeHooks.onLivingDeath(ForgeHooks.java:352) [ForgeHooks.class:?]
at net.minecraft.entity.player.EntityPlayerMP.onDeath(EntityPlayerMP.java:486) [EntityPlayerMP.class:?]
at net.minecraft.entity.EntityLivingBase.attackEntityFrom(EntityLivingBase.java:947) [EntityLivingBase.class:?]
at net.minecraft.entity.player.EntityPlayer.attackEntityFrom(EntityPlayer.java:1180) [EntityPlayer.class:?]
at net.minecraft.entity.player.EntityPlayerMP.attackEntityFrom(EntityPlayerMP.java:594) [EntityPlayerMP.class:?]
at net.minecraft.entity.EntityLivingBase.onKillCommand(EntityLivingBase.java:155) [EntityLivingBase.class:?]
at net.minecraft.command.CommandKill.execute(CommandKill.java:39) [CommandKill.class:?]
at net.minecraft.command.CommandHandler.tryExecute(CommandHandler.java:110) [CommandHandler.class:?]
at net.minecraft.command.CommandHandler.executeCommand(CommandHandler.java:87) [CommandHandler.class:?]
at net.minecraft.network.NetHandlerPlayServer.handleSlashCommand(NetHandlerPlayServer.java:853) [NetHandlerPlayServer.class:?]
at net.minecraft.network.NetHandlerPlayServer.processChatMessage(NetHandlerPlayServer.java:829) [NetHandlerPlayServer.class:?]
at net.minecraft.network.play.client.C01PacketChatMessage.processPacket(C01PacketChatMessage.java:44) [C01PacketChatMessage.class:?]
at net.minecraft.network.play.client.C01PacketChatMessage.processPacket(C01PacketChatMessage.java:57) [C01PacketChatMessage.class:?]
at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:24) [PacketThreadUtil$1.class:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_60]
at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_60]
at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:714) [FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:727) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:385) [DedicatedServer.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_60]
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.Minecraft
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.11.jar:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
... 26 more
Caused by: net.minecraftforge.fml.common.asm.ASMTransformerWrapper$TransformerException: Exception in class transformer net.minecraftforge.fml.common.asm.transformers.SideTransformer@659a969b from coremod FMLCorePlugin
at net.minecraftforge.fml.common.asm.ASMTransformerWrapper$TransformerWrapper.transform(ASMTransformerWrapper.java:234) ~[forgeSrc-1.8-11.14.3.1450.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) ~[launchwrapper-1.11.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) ~[launchwrapper-1.11.jar:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
... 26 more
Caused by: java.lang.RuntimeException: Attempted to load class net/minecraft/client/Minecraft for invalid side SERVER
at net.minecraftforge.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:49) ~[forgeSrc-1.8-11.14.3.1450.jar:?]
at net.minecraftforge.fml.common.asm.ASMTransformerWrapper$TransformerWrapper.transform(ASMTransformerWrapper.java:230) ~[forgeSrc-1.8-11.14.3.1450.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) ~[launchwrapper-1.11.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) ~[launchwrapper-1.11.jar:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
... 26 more
[17:37:29] [server thread/ERROR] [FML]: Index: 1 Listeners:
[17:37:29] [server thread/ERROR] [FML]: 0: NORMAL
[17:37:29] [server thread/ERROR] [FML]: 1: ASM: de.toby.tobymodxp.handler.ForgeEventHandler@312debab playerDied(Lnet/minecraftforge/event/entity/living/LivingDeathEvent;)V
[17:37:29] [server thread/ERROR]: Couldn't process command: 'kill'
java.lang.NoClassDefFoundError: net/minecraft/client/Minecraft
at de.toby.tobymodxp.handler.ForgeEventHandler.playerDied(ForgeEventHandler.java:29) ~[ForgeEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler_9_ForgeEventHandler_playerDied_LivingDeathEvent.invoke(.dynamic) ~[?:?]
at net.minecraftforge.fml.common.eventhandler.ASMEventHandler.invoke(ASMEventHandler.java:55) ~[ASMEventHandler.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:138) ~[EventBus.class:?]
at net.minecraftforge.common.ForgeHooks.onLivingDeath(ForgeHooks.java:352) ~[ForgeHooks.class:?]
at net.minecraft.entity.player.EntityPlayerMP.onDeath(EntityPlayerMP.java:486) ~[EntityPlayerMP.class:?]
at net.minecraft.entity.EntityLivingBase.attackEntityFrom(EntityLivingBase.java:947) ~[EntityLivingBase.class:?]
at net.minecraft.entity.player.EntityPlayer.attackEntityFrom(EntityPlayer.java:1180) ~[EntityPlayer.class:?]
at net.minecraft.entity.player.EntityPlayerMP.attackEntityFrom(EntityPlayerMP.java:594) ~[EntityPlayerMP.class:?]
at net.minecraft.entity.EntityLivingBase.onKillCommand(EntityLivingBase.java:155) ~[EntityLivingBase.class:?]
at net.minecraft.command.CommandKill.execute(CommandKill.java:39) ~[CommandKill.class:?]
at net.minecraft.command.CommandHandler.tryExecute(CommandHandler.java:110) [CommandHandler.class:?]
at net.minecraft.command.CommandHandler.executeCommand(CommandHandler.java:87) [CommandHandler.class:?]
at net.minecraft.network.NetHandlerPlayServer.handleSlashCommand(NetHandlerPlayServer.java:853) [NetHandlerPlayServer.class:?]
at net.minecraft.network.NetHandlerPlayServer.processChatMessage(NetHandlerPlayServer.java:829) [NetHandlerPlayServer.class:?]
at net.minecraft.network.play.client.C01PacketChatMessage.processPacket(C01PacketChatMessage.java:44) [C01PacketChatMessage.class:?]
at net.minecraft.network.play.client.C01PacketChatMessage.processPacket(C01PacketChatMessage.java:57) [C01PacketChatMessage.class:?]
at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:24) [PacketThreadUtil$1.class:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_60]
at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_60]
at net.minecraftforge.fml.common.FMLCommonHandler.callFuture(FMLCommonHandler.java:714) [FMLCommonHandler.class:?]
at net.minecraft.server.MinecraftServer.updateTimeLightAndEntities(MinecraftServer.java:727) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.updateTimeLightAndEntities(DedicatedServer.java:385) [DedicatedServer.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:669) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:540) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_60]
Caused by: java.lang.ClassNotFoundException: net.minecraft.client.Minecraft
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.11.jar:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
... 26 more
Caused by: net.minecraftforge.fml.common.asm.ASMTransformerWrapper$TransformerException: Exception in class transformer net.minecraftforge.fml.common.asm.transformers.SideTransformer@659a969b from coremod FMLCorePlugin
at net.minecraftforge.fml.common.asm.ASMTransformerWrapper$TransformerWrapper.transform(ASMTransformerWrapper.java:234) ~[forgeSrc-1.8-11.14.3.1450.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) ~[launchwrapper-1.11.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) ~[launchwrapper-1.11.jar:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
... 26 more
Caused by: java.lang.RuntimeException: Attempted to load class net/minecraft/client/Minecraft for invalid side SERVER
at net.minecraftforge.fml.common.asm.transformers.SideTransformer.transform(SideTransformer.java:49) ~[forgeSrc-1.8-11.14.3.1450.jar:?]
at net.minecraftforge.fml.common.asm.ASMTransformerWrapper$TransformerWrapper.transform(ASMTransformerWrapper.java:230) ~[forgeSrc-1.8-11.14.3.1450.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.runTransformers(LaunchClassLoader.java:279) ~[launchwrapper-1.11.jar:?]
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:176) ~[launchwrapper-1.11.jar:?]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_60]
... 26 more

 

Neiter the server nor the client crashed. In singleplayer it works fine.

 

Here's the problem code:

@SubscribeEvent
public void playerDied(LivingDeathEvent e) {
	if(TobyModXP.keepXp) {

		if(e.entity instanceof EntityPlayer){
			total = Minecraft.getMinecraft().thePlayer.experienceTotal;   [b]<- Line 29[/b]
			lvl = Minecraft.getMinecraft().thePlayer.experienceLevel;
			bar = Minecraft.getMinecraft().thePlayer.experience;	
		}
	}
}

 

Thx for helping

 

Link to comment
Share on other sites

Minecraft.class is client-side class. Dedicated server doesn't have it.

Read more: http://www.minecraftforge.net/forum/index.php/topic,33918.msg178740.html#msg178740

 

Aside from the fact that you cannot use client-side classes in common code, you are also doing everything wrong.

 

You should be doing it rather this way:

@SubscribeEvent
public void playerDied(LivingDeathEvent e) {
	if(TobyModXP.keepXp) {

		if(e.entity instanceof EntityPlayer){
EntityPlayer p = (EntityPlayer) e.entity;
			total = p.experienceTotal;   [b]<- Line 29[/b]
			lvl = p.experienceLevel;
			bar = p.experience;	
		}
	}
}

1.7.10 is no longer supported by forge, you are on your own.

Link to comment
Share on other sites

  • 4 years later...
  • Guest locked this topic
Guest
This topic is now closed to further replies.

Announcements



×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.