GeyserMC / Floodgate

Hybrid mode plugin to allow for connections from Geyser to join online mode servers.
https://geysermc.org
MIT License
575 stars 170 forks source link

Floodgate is not support Arclight server #308

Closed qyl27 closed 2 years ago

qyl27 commented 2 years ago

Arclight is a Forge + Bukkit mixed server. It has better performance than some bukkit-fork servers. I want to use it to set up my Vanilla server. When I tried to install Floodgate-spigot for it (as a bukkit plugin), then I got some errors.

My server jar, Geyser, and floodgate are all up-to-date. There is it.

[15:58:13 ERROR] [Minecraft]: Error occurred while enabling floodgate v2.1.0-SNAPSHOT (Is it up to date?)
java.lang.ExceptionInInitializerError: null
        at org.geysermc.floodgate.inject.spigot.SpigotInjector.getServerConnection(SpigotInjector.java:156) ~[?:?]
        at org.geysermc.floodgate.inject.spigot.SpigotInjector.inject(SpigotInjector.java:59) ~[?:?]
        at org.geysermc.floodgate.FloodgatePlatform.enable(FloodgatePlatform.java:121) ~[?:?]
        at org.geysermc.floodgate.SpigotPlatform.enable(SpigotPlatform.java:48) ~[?:?]
        at org.geysermc.floodgate.SpigotPlugin.onEnable(SpigotPlugin.java:66) ~[?:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPluginMixin.java:264) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoaderMixin.java:342) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:480) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at org.bukkit.craftbukkit.v1_18_R2.CraftServer.enablePlugin(CraftServerMixin.java:518) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at org.bukkit.craftbukkit.v1_18_R2.CraftServer.enablePlugins(CraftServerMixin.java:432) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at net.minecraft.server.MinecraftServer.handler$zbc000$arclight$enablePlugins(MinecraftServerMixin.java:2217) ~[server-1.18.2-20220404.173914-srg.jar%2370!/:?]
        at net.minecraft.server.MinecraftServer.m_129815_(MinecraftServerMixin.java:403) ~[server-1.18.2-20220404.173914-srg.jar%2370!/:?]
        at net.minecraft.server.MinecraftServer.m_130006_(MinecraftServerMixin.java:316) ~[server-1.18.2-20220404.173914-srg.jar%2370!/:?]
        at net.minecraft.server.dedicated.DedicatedServer.m_7038_(DedicatedServerMixin.java:173) ~[server-1.18.2-20220404.173914-srg.jar%2370!/:?]
        at net.minecraft.server.MinecraftServer.m_130011_(MinecraftServerMixin.java:2099) ~[server-1.18.2-20220404.173914-srg.jar%2370!/:?]
        at net.minecraft.server.MinecraftServer.m_177918_(MinecraftServerMixin.java:261) ~[server-1.18.2-20220404.173914-srg.jar%2370!/:?]
        at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.IllegalStateException: java.lang.ClassNotFoundException: net.minecraft.server.v1_18_R2.LoginListener.LoginHandler
        at org.geysermc.floodgate.util.ReflectionUtils.getClassOrThrow(ReflectionUtils.java:108) ~[?:?]
        at org.geysermc.floodgate.util.ClassNames.getClassOrFallBack(ClassNames.java:184) ~[?:?]
        at org.geysermc.floodgate.util.ClassNames.<clinit>(ClassNames.java:153) ~[?:?]
        ... 17 more
Caused by: java.lang.ClassNotFoundException: net.minecraft.server.v1_18_R2.LoginListener.LoginHandler
        at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoaderMixin.java:147) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoaderMixin.java:99) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
        at java.lang.Class.forName0(Native Method) ~[?:?]
        at java.lang.Class.forName(Class.java:467) ~[?:?]
        at io.izzel.arclight.common.mod.util.remapper.generated.ArclightReflectionHandler_0.redirectClassForName(ArclightReflectionHandler.java:240) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at io.izzel.arclight.common.mod.util.remapper.generated.ArclightReflectionHandler_0.redirectClassForName(ArclightReflectionHandler.java:227) ~[arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7.jar%2368!/:arclight-1.18.2-1.0.5-SNAPSHOT-51a9d2a7]
        at org.geysermc.floodgate.util.ReflectionUtils.getClassOrThrow(ReflectionUtils.java:106) ~[?:?]
        at org.geysermc.floodgate.util.ClassNames.getClassOrFallBack(ClassNames.java:184) ~[?:?]
        at org.geysermc.floodgate.util.ClassNames.<clinit>(ClassNames.java:153) ~[?:?]
        ... 17 more
MrZomka commented 2 years ago

Arclight implements Bukkit API, not Spigot API, Floodgate doesn’t work on CraftBukkit. Of course it doesn’t work.

Camotoy commented 2 years ago

The Bukkit API type of implementation is not the issue here (from a quick glance at their build files, they do indeed support the Spigot API). This is an issue on Arclight's end - if I had to guess, they're not remapping internal classes correctly. Regardless, this is an issue on their end; this is not on us to fix.

Thanks anyway. Good luck.