INTERNAL ERROR: Cannot load ProtocolLib
duckysarts opened this issue ยท 4 comments
Describe the bug
On server startup there is a long error message that begins by saying, "If this problem hasn't already been reported, please open a ticket."
FIRST ERROR -----
[18:49:05 INFO]: [ProtocolLib] Loading ProtocolLib v4.6.0-SNAPSHOT-b483
[18:49:05 WARN]: [ProtocolLib] Version (MC: 1.16.4) has not yet been tested! Proceed with caution.
[18:49:05 ERROR]: [ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib.
If this problem hasn't already been reported, please open a ticket
at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
Stack Trace:
java.lang.NoSuchMethodError: com.comphenix.protocol.ProtocolLibrary.init(Lorg/bukkit/plugin/Plugin;Lcom/comphenix/protocol/ProtocolConfig;Lcom/comphenix/protocol/ProtocolManager;Lcom/comphenix/protocol/error/ErrorReporter;)V
at com.comphenix.protocol.ProtocolLib.onLoad(ProtocolLib.java:201)
at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:394)
at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:206)
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:935)
at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:177)
at java.base/java.lang.Thread.run(Thread.java:835)
Dump:
Parameters:
com.comphenix.protocol.injector.PacketFilterManager@eab99aa[
unhookTask=com.comphenix.protocol.injector.DelayedSingleTask@73333460
packetListeners=[]
packetInjector=com.comphenix.protocol.injector.netty.ProtocolInjector$5@358eff77
playerInjection=com.comphenix.protocol.injector.netty.ProtocolInjector$4@1ab55b42
inputBufferedPackets=[]
recievedListeners=com.comphenix.protocol.injector.SortedPacketListenerList@4801e777
sendingListeners=com.comphenix.protocol.injector.SortedPacketListenerList@227b4a23
hasClosed=false
classLoader=PluginClassLoader{plugin=ProtocolLib v4.6.0-SNAPSHOT-b483, pluginEnabled=false, url=plugins\ProtocolLib.jar}
reporter=com.comphenix.protocol.ProtocolLib$1@5093444c
server=CraftServer{serverName=Paper,serverVersion=git-Paper-313,minecraftVersion=1.16.4}
library=ProtocolLib v4.6.0-SNAPSHOT-b483
asyncFilterManager=com.comphenix.protocol.async.AsyncFilterManager@6fbc51fa
knowsServerPackets=true
knowsClientPackets=true
phaseLoginCount=0
phasePlayingCount=0
packetCreation=false
nettyInjector=com.comphenix.protocol.injector.netty.ProtocolInjector@4d07767b
pluginVerifier=com.comphenix.protocol.injector.PluginVerifier@2a070e90
hasRecycleDistance=true
minecraftVersion=(MC: 1.16.4)
debug=false
]
Sender:
com.comphenix.protocol.ProtocolLib@55fa28bf[
statistics=
backgroundCompiler=
packetTask=-1
tickCounter=0
unhookTask=com.comphenix.protocol.injector.DelayedSingleTask@73333460
configExpectedMod=-1
updater=com.comphenix.protocol.updater.SpigotUpdater@233838d5
redirectHandler=
commandProtocol=
commandPacket=
commandFilter=
packetLogging=
skipDisable=false
isEnabled=false
loader=org.bukkit.plugin.java.JavaPluginLoader@31d9c1ac
server=CraftServer{serverName=Paper,serverVersion=git-Paper-313,minecraftVersion=1.16.4}
file=plugins\ProtocolLib.jar
description=org.bukkit.plugin.PluginDescriptionFile@2b259f8
dataFolder=plugins\ProtocolLib
classLoader=PluginClassLoader{plugin=ProtocolLib v4.6.0-SNAPSHOT-b483, pluginEnabled=false, url=plugins\ProtocolLib.jar}
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins\ProtocolLib\config.yml
logger=com.destroystokyo.paper.utils.PaperPluginLogger@64954855
]
Version:
ProtocolLib v4.6.0-SNAPSHOT-b483
Java Version:
12.0.2
Server:
git-Paper-313 (MC: 1.16.4)
LATER ON, after the rest of the plugins finish loading, there is also this error about 'Cannot perform automatic updates." ---
[18:49:39 INFO]: Error Cannot perform automatic updates. (java.lang.NullPointerException) occured in ProtocolLib v4.6.0-SNAPSHOT-b483.
[18:49:39 ERROR]: [ProtocolLib] INTERNAL ERROR: Cannot perform automatic updates.
If this problem hasn't already been reported, please open a ticket
at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
Stack Trace:
java.lang.NullPointerException
at com.comphenix.protocol.ProtocolLib.checkUpdates(ProtocolLib.java:585)
at com.comphenix.protocol.ProtocolLib.access$600(ProtocolLib.java:58)
at com.comphenix.protocol.ProtocolLib$3.run(ProtocolLib.java:550)
at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftTask.run(CraftTask.java:99)
at org.bukkit.craftbukkit.v1_16_R3.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:468)
at net.minecraft.server.v1_16_R3.MinecraftServer.b(MinecraftServer.java:1294)
at net.minecraft.server.v1_16_R3.DedicatedServer.b(DedicatedServer.java:377)
at net.minecraft.server.v1_16_R3.MinecraftServer.a(MinecraftServer.java:1209)
at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:997)
at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:177)
at java.base/java.lang.Thread.run(Thread.java:835)
Dump:
Sender:
com.comphenix.protocol.ProtocolLib@55fa28bf[
statistics=com.comphenix.protocol.metrics.Statistics@4a8b85fa
backgroundCompiler=com.comphenix.protocol.reflect.compiler.BackgroundCompiler@1b33172b
packetTask=12
tickCounter=20
unhookTask=com.comphenix.protocol.injector.DelayedSingleTask@73333460
configExpectedMod=1
updater=com.comphenix.protocol.updater.SpigotUpdater@233838d5
redirectHandler=
commandProtocol=
commandPacket=
commandFilter=
packetLogging=
skipDisable=false
isEnabled=true
loader=org.bukkit.plugin.java.JavaPluginLoader@31d9c1ac
server=CraftServer{serverName=Paper,serverVersion=git-Paper-313,minecraftVersion=1.16.4}
file=plugins\ProtocolLib.jar
description=org.bukkit.plugin.PluginDescriptionFile@2b259f8
dataFolder=plugins\ProtocolLib
classLoader=PluginClassLoader{plugin=ProtocolLib v4.6.0-SNAPSHOT-b483, pluginEnabled=true, url=plugins\ProtocolLib.jar}
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins\ProtocolLib\config.yml
logger=com.destroystokyo.paper.utils.PaperPluginLogger@64954855
]
Version:
ProtocolLib v4.6.0-SNAPSHOT-b483
Java Version:
12.0.2
Server:
git-Paper-313 (MC: 1.16.4)
To Reproduce
Steps to reproduce the behavior:
I included a full list of plugins below, but importantly, everything works as expected when Orebfuscator is not installed. As soon as I add Orebfuscator 5.1.3, ProtocolLib produces the above errors and all its dependencies (including Orebfuscator) fail to start up as well. The included errors are just as a result of starting the server with Orebfuscator installed.
Expected behavior
I expected it to launch with no errors :P
Screenshots
If applicable, add screenshots to help explain your problem. (I don't think any are relevant but let me know if there's anything I should include)
Version Info
Dump: https://pastebin.com/qJvNz8ME
paper-1.16.4-313
Java 12 (I updated to this recently)
I am running the latest dev build of protocollib.
Additional context
Based on the fact that this behavior is seemingly induced by Orebfuscator, perhaps I should reach out to them instead/as well. But the error message from ProtocolLib suggested I create a bug report so I did. :)
[09:55:00 WARN]: [ProtocolLib] Version (MC: 1.20.2) has not yet been tested! Proceed with caution.
[09:55:02 ERROR]: [ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib.
If this problem hasn't already been reported, please open a ticket
at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
Stack Trace:
java.lang.IllegalArgumentException: Unable to find a field that matches {modifiers=[required: 10000, banned: 1000], type={ type input instanceof interface java.util.Map }}
at ProtocolLib.jar//com.comphenix.protocol.reflect.FuzzyReflection.getField(FuzzyReflection.java:352)
at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.createNewRegister(PacketRegistry.java:188)
at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.initialize(PacketRegistry.java:292)
at ProtocolLib.jar//com.comphenix.protocol.injector.packet.PacketRegistry.getClientPacketTypes(PacketRegistry.java:327)
at ProtocolLib.jar//com.comphenix.protocol.injector.PacketFilterManager.(PacketFilterManager.java:120)
at ProtocolLib.jar//com.comphenix.protocol.injector.PacketFilterBuilder.build(PacketFilterBuilder.java:121)
at ProtocolLib.jar//com.comphenix.protocol.ProtocolLib.onLoad(ProtocolLib.java:183)
at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:59)
at io.papermc.paper.plugin.storage.ServerPluginProviderStorage.processProvided(ServerPluginProviderStorage.java:18)
at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:40)
at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:36)
at org.bukkit.craftbukkit.v1_20_R2.CraftServer.loadPlugins(CraftServer.java:526)
at net.minecraft.server.dedicated.DedicatedServer.e(DedicatedServer.java:307)
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1100)
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:318)
at java.base/java.lang.Thread.run(Thread.java:1623)
Dump:
Parameters:
[NULL]
Sender:
com.comphenix.protocol.ProtocolLib@67568102[
statistics=
packetTask=
tickCounter=0
configExpectedMod=-1
updater=com.comphenix.protocol.updater.SpigotUpdater@25e273d6
redirectHandler=
scheduler=com.comphenix.protocol.scheduler.DefaultScheduler@77445c4f
commandProtocol=
commandPacket=
commandFilter=
packetLogging=
skipDisable=false
isEnabled=false
loader=io.papermc.paper.plugin.manager.DummyBukkitPluginLoader@28ee3230
server=CraftServer{serverName=Purpur,serverVersion=git-Purpur-2064,minecraftVersion=1.20.2}
file=plugins\ProtocolLib.jar
description=org.bukkit.plugin.PluginDescriptionFile@3d9d66b2
pluginMeta=org.bukkit.plugin.PluginDescriptionFile@3d9d66b2
dataFolder=plugins\ProtocolLib
classLoader=PluginClassLoader{plugin=ProtocolLib v5.1.0, pluginEnabled=false, url=plugins\ProtocolLib.jar}
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins\ProtocolLib\config.yml
logger=com.destroystokyo.paper.utils.PaperPluginLogger@301a2037
]
Version:
ProtocolLib v5.1.0
Java Version:
20.0.2
Server:
git-Purpur-2064 (MC: 1.20.2)
@WorldBoose Version 5.1.0 you are using is not compatible with Minecraft 1.20.2. You can use this dev build for 1.20.2 support: https://ci.dmulloy2.net/job/ProtocolLib/669/
`[ProtocolLib] INTERNAL ERROR: Cannot load ProtocolLib.
If this problem hasn't already been reported, please open a ticket
at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
Stack Trace:
java.lang.RuntimeException: Failed to find CraftBukkit class: entity.CraftPlayer
at com.comphenix.protocol.utility.MinecraftReflection.lambda$getCraftBukkitClass$0(MinecraftReflection.java:2014)
at java.util.Optional.orElseThrow(Optional.java:290)
at com.comphenix.protocol.utility.MinecraftReflection.getCraftBukkitClass(MinecraftReflection.java:2014)
at com.comphenix.protocol.utility.MinecraftReflection.getEntityPlayerClass(MinecraftReflection.java:588)
at com.comphenix.protocol.utility.MinecraftReflection.getPlayerConnectionClass(MinecraftReflection.java:1047)
at com.comphenix.protocol.utility.MinecraftReflection.getNetworkManagerClass(MinecraftReflection.java:1082)
at com.comphenix.protocol.utility.MinecraftReflection.getEnumProtocolClass(MinecraftReflection.java:758)
at com.comphenix.protocol.injector.netty.ProtocolRegistry.(ProtocolRegistry.java:58)
at com.comphenix.protocol.injector.netty.NettyProtocolRegistry.(NettyProtocolRegistry.java:43)
at com.comphenix.protocol.injector.packet.PacketRegistry.initialize(PacketRegistry.java:54)
at com.comphenix.protocol.injector.packet.PacketRegistry.getClientPacketTypes(PacketRegistry.java:112)
at com.comphenix.protocol.injector.PacketFilterManager.(PacketFilterManager.java:211)
at com.comphenix.protocol.injector.PacketFilterBuilder.buildInternal(PacketFilterBuilder.java:185)
at com.comphenix.protocol.injector.PacketFilterBuilder.build(PacketFilterBuilder.java:177)
at com.comphenix.protocol.ProtocolLib.onLoad(ProtocolLib.java:198)
at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:375)
at net.minecraft.class_3176.handler$zza000$init(class_3176.java:741)
at net.minecraft.class_3176.method_3823(class_3176.java:155)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:645)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:257)
at java.lang.Thread.run(Thread.java:748)
Dump:
Parameters:
[NULL]
Sender:
com.comphenix.protocol.ProtocolLib@1e2d9db1[
statistics=
backgroundCompiler=
packetTask=-1
tickCounter=0
unhookTask=com.comphenix.protocol.injector.DelayedSingleTask@48b87d3a
configExpectedMod=-1
updater=com.comphenix.protocol.updater.SpigotUpdater@3226873f
redirectHandler=
commandProtocol=
commandPacket=
commandFilter=
packetLogging=
skipDisable=false
isEnabled=false
loader=org.bukkit.plugin.java.JavaPluginLoader@f303e4b
server=CraftServer{serverName=CardboardPowered.org,serverVersion=git-Bukkit4Fabric-3cb2109,minecraftVersion=1.16.4}
file=plugins\ProtocolLib (6).jar
description=org.bukkit.plugin.PluginDescriptionFile@76d8093e
dataFolder=plugins\ProtocolLib
classLoader=PluginClassLoader{plugin=ProtocolLib v4.6.0-SNAPSHOT-b490, pluginEnabled=false, url=plugins\ProtocolLib (6).jar}
naggable=true
newConfig=YamlConfiguration[path='', root='YamlConfiguration']
configFile=plugins\ProtocolLib\config.yml
logger=com.javazilla.bukkitfabric.BukkitLogger@7e0dcd90
]
Version:
ProtocolLib v4.6.0-SNAPSHOT-b490
Java Version:
1.8.0_281
Server:
git-Bukkit4Fabric-3cb2109 (MC: 1.16.4)
[18:49:57] [Server thread/INFO]: Enabling ProtocolLib v4.6.0-SNAPSHOT-b490
[18:49:57] [Server thread/INFO]: Disabling ProtocolLib v4.6.0-SNAPSHOT-b490`