Rothes / ProtocolStringReplacer

A Spigot plugin that allows you to edit the String in packet sends to players.
GNU General Public License v3.0
43 stars 10 forks source link

NoClassDefFoundError LineReader #24

Closed DarkyCat closed 2 years ago

DarkyCat commented 2 years ago

Java 17 (adoptium.net) Server-version: Purpur 1.17.1 ProtocolLib: 4.8.0 (Build: 540) [00:37:16] [Server thread/WARN]: java.lang.NoClassDefFoundError: org/jline/reader/LineReader [00:37:16] [Server thread/WARN]: at ProtocolStringReplacer v2.5.0.jar//me.rothes.protocolstringreplacer.console.ConsoleReplaceManager.replaceReader(ConsoleReplaceManager.java:165) [00:37:16] [Server thread/WARN]: at ProtocolStringReplacer v2.5.0.jar//me.rothes.protocolstringreplacer.console.ConsoleReplaceManager.initialize(ConsoleReplaceManager.java:75) [00:37:16] [Server thread/WARN]: at ProtocolStringReplacer v2.5.0.jar//me.rothes.protocolstringreplacer.ProtocolStringReplacer.(ProtocolStringReplacer.java:101) [00:37:16] [Server thread/WARN]: at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [00:37:16] [Server thread/WARN]: at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:77) [00:37:16] [Server thread/WARN]: at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [00:37:16] [Server thread/WARN]: at java.base/java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) [00:37:16] [Server thread/WARN]: at java.base/java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:128) [00:37:16] [Server thread/WARN]: at java.base/jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:347) [00:37:16] [Server thread/WARN]: at java.base/java.lang.Class.newInstance(Class.java:645) [00:37:16] [Server thread/WARN]: at org.bukkit.plugin.java.PluginClassLoader.(PluginClassLoader.java:85) [00:37:16] [Server thread/WARN]: at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:153) [00:37:16] [Server thread/WARN]: at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:414) [00:37:16] [Server thread/WARN]: at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:322) [00:37:16] [Server thread/WARN]: at org.bukkit.craftbukkit.v1_17_R1.CraftServer.loadPlugins(CraftServer.java:419) [00:37:16] [Server thread/WARN]: at net.minecraft.server.dedicated.DedicatedServer.init(DedicatedServer.java:322) [00:37:16] [Server thread/WARN]: at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1233) [00:37:16] [Server thread/WARN]: at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:322) [00:37:16] [Server thread/WARN]: at java.base/java.lang.Thread.run(Thread.java:833) [00:37:16] [Server thread/WARN]: Caused by: java.lang.ClassNotFoundException: org.jline.reader.LineReader [00:37:16] [Server thread/WARN]: at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:153) [00:37:16] [Server thread/WARN]: at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:105) [00:37:16] [Server thread/WARN]: at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) [00:37:16] [Server thread/WARN]: ... 19 more

Rothes commented 2 years ago

PurPur shades LineReader to other package, but Spigot/Paper does not. Not clear how to deal with it currently. This error will cause an empty line when you block console message.

Rothes commented 2 years ago

Paper 1.18.1 has already fixed this issue. Please do not use Paper 1.17.1 because this problem still exist on it and it's not maintained any more. (Paper is upstream of PurPur so PurPur also has this issue)