[paper 1.17-dev] Unhandled exception occured in onPacketSending(PacketEvent) for HolographicDisplays
hetile1 opened this issue ยท 3 comments
Description
Running latest papermc 1.17 (#15) and latest snapshot of HD (2.4.8-snap), the server throw a console error on join for every player. It doesn't seem to affect the client since the HD are actually displayed in-game. This is probably not 100% plugin's fault since the same setup using only spigot didn't send any errors.
This is the error on login:
[13:19:39] [Server thread/INFO]: hetile joined the game
[13:19:39] [Server thread/ERROR]: [HolographicDisplays] Unhandled exception occured in onPacketSending(PacketEvent) for HolographicDisplays
java.lang.NoClassDefFoundError: org/bukkit/craftbukkit/libs/it/unimi/dsi/fastutil/ints/Int2ObjectMap
at com.comphenix.protocol.reflect.instances.DefaultInstances.lambda$static$0(DefaultInstances.java:57) ~[?:?]
at com.comphenix.protocol.reflect.instances.DefaultInstances.getDefaultInternal(DefaultInstances.java:288) ~[?:?]
at com.comphenix.protocol.reflect.instances.DefaultInstances.getDefault(DefaultInstances.java:195) ~[?:?]
at com.comphenix.protocol.reflect.instances.DefaultInstances.create(DefaultInstances.java:363) ~[?:?]
at com.comphenix.protocol.reflect.cloning.FieldCloner.canClone(FieldCloner.java:77) ~[?:?]
at com.comphenix.protocol.reflect.cloning.AggregateCloner.getFirstCloner(AggregateCloner.java:235) ~[?:?]
at com.comphenix.protocol.reflect.cloning.AggregateCloner.clone(AggregateCloner.java:252) ~[?:?]
at com.comphenix.protocol.events.PacketContainer.deepClone(PacketContainer.java:1162) ~[?:?]
at com.gmail.filoghost.holographicdisplays.bridge.protocollib.current.ProtocolLibHookImpl$1.onPacketSending(ProtocolLibHookImpl.java:154) ~[?:?]
at com.comphenix.protocol.injector.SortedPacketListenerList.invokeSendingListener(SortedPacketListenerList.java:195) ~[?:?]
at com.comphenix.protocol.injector.SortedPacketListenerList.invokePacketSending(SortedPacketListenerList.java:149) ~[?:?]
at com.comphenix.protocol.injector.PacketFilterManager.handlePacket(PacketFilterManager.java:535) ~[?:?]
at com.comphenix.protocol.injector.PacketFilterManager.invokePacketSending(PacketFilterManager.java:516) ~[?:?]
at com.comphenix.protocol.injector.netty.ProtocolInjector.packetQueued(ProtocolInjector.java:346) ~[?:?]
at com.comphenix.protocol.injector.netty.ProtocolInjector.onPacketSending(ProtocolInjector.java:308) ~[?:?]
at com.comphenix.protocol.injector.netty.ChannelInjector.processSending(ChannelInjector.java:433) ~[?:?]
at com.comphenix.protocol.injector.netty.ChannelInjector.access$800(ChannelInjector.java:70) ~[?:?]
at com.comphenix.protocol.injector.netty.ChannelInjector$3.handleScheduled(ChannelInjector.java:373) ~[?:?]
at com.comphenix.protocol.injector.netty.ChannelInjector$3.onMessageScheduled(ChannelInjector.java:343) ~[?:?]
at com.comphenix.protocol.injector.netty.ChannelProxy$2.schedulingRunnable(ChannelProxy.java:127) ~[?:?]
at com.comphenix.protocol.injector.netty.EventLoopProxy.execute(EventLoopProxy.java:95) ~[?:?]
at net.minecraft.network.NetworkManager.b(NetworkManager.java:294) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.network.NetworkManager.sendPacket(NetworkManager.java:258) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1920) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.network.PlayerConnection.sendPacket(PlayerConnection.java:1906) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.level.EntityTrackerEntry.a(EntityTrackerEntry.java:285) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.level.EntityTrackerEntry.b(EntityTrackerEntry.java:268) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.level.PlayerChunkMap$EntityTracker.updatePlayer(PlayerChunkMap.java:2381) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.level.PlayerChunkMap.addEntity(PlayerChunkMap.java:2002) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.players.PlayerList.postChunkLoadJoin(PlayerList.java:385) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.players.PlayerList.lambda$placeNewPlayer$1(PlayerList.java:298) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.network.PlayerConnection.tick(PlayerConnection.java:308) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.network.NetworkManager.a(NetworkManager.java:399) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.network.ServerConnection.c(ServerConnection.java:196) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1576) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.dedicated.DedicatedServer.b(DedicatedServer.java:476) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:1404) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1180) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:320) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at java.lang.Thread.run(Thread.java:831) [?:?]
Caused by: java.lang.ClassNotFoundException: org.bukkit.craftbukkit.libs.it.unimi.dsi.fastutil.ints.Int2ObjectMap
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:146) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:103) ~[patched_1.17.jar:git-Paper-"33d6b6f"]
at java.lang.ClassLoader.loadClass(ClassLoader.java:519) ~[?:?]
... 40 more
[13:19:39] [Server thread/ERROR]: Parameters:
net.minecraft.network.protocol.game.PacketPlayOutEntityMetadata@50b10e93[
a=203
b=[net.minecraft.network.syncher.DataWatcher$Item@fd3ee6, net.minecraft.network.syncher.DataWatcher$Item@2f96abe6, net.minecraft.network.syncher.DataWatcher$Item@13cf8f60, net.minecraft.network.syncher.DataWatcher$Item@730d7eb5, net.minecraft.network.syncher.DataWatcher$Item@1aee743c, net.minecraft.network.syncher.DataWatcher$Item@bd351c, net.minecraft.network.syncher.DataWatcher$Item@6fe60ee4, net.minecraft.network.syncher.DataWatcher$Item@77063d7b, net.minecraft.network.syncher.DataWatcher$Item@1ea0f833, net.minecraft.network.syncher.DataWatcher$Item@775c3b2e, net.minecraft.network.syncher.DataWatcher$Item@28129a0f, net.minecraft.network.syncher.DataWatcher$Item@6e399793, net.minecraft.network.syncher.DataWatcher$Item@77418b07, net.minecraft.network.syncher.DataWatcher$Item@61d25b8a, net.minecraft.network.syncher.DataWatcher$Item@5dac675d, net.minecraft.network.syncher.DataWatcher$Item@7f0be674, net.minecraft.network.syncher.DataWatcher$Item@4e94321, net.minecraft.network.syncher.DataWatcher$Item@7794563d, net.minecraft.network.syncher.DataWatcher$Item@493c511d, net.minecraft.network.syncher.DataWatcher$Item@69243608, net.minecraft.network.syncher.DataWatcher$Item@271a9046, net.minecraft.network.syncher.DataWatcher$Item@726a0f26]
]
How to reproduce
- Install papermc 1.17 (#15 at the time of writing this)
- Install 2.4.8-snap of HD
- Create some HD
- Login on the server
Platform
-
Server version (output of
/version
):
This server is running Paper version git-Paper-"33d6b6f" (MC: 1.17) (Implementing API version 1.17-R0.1-SNAPSHOT)
-
Holographic Displays version (check with
/hd
):
Server is running Holographic Displays v2.4.8-SNAPSHOT-b173 by filoghost
-
ProtocolLib version, if installed (check with
/protocol version
):
ProtocolLib v4.7.0-SNAPSHOT-b508
-
Do you use plugins to allow players to join with multiple Minecraft versions (such as ViaVersion, ProtocolSupport, ...):
Yes, ViaVersion and ViaBackward are both installed on the server.
ViaVersion 4.0.1-SNAPSHOT
ViaBackwards-4.0.0
(the 4.0.1-snap doesn't work)
Additional context
Here is the server full bootlog: https://pastebin.com/raw/kLtqCGNP
Not sure if this is relevant, but the server is also running as a bungecord node (running latest waterfall)
Edit
Tried on build # 19 of paper with same results
Tried on build # 26 of paper with same results
Looks like a ProtocolLib error. Update to its latest dev build. Also try without ViaVersion and ViaBackwards.
I am not exactly sure what fixed it but I updated to paper build # 30 and bumped Protocolib to the latest build (4.7.0-SNAPSHOT-b521
I was already on the 4.7 branch tho..
With this, HD isn't complaining on everyone's join (I did not remove ViaVersion and ViaBackwards).