noahbclarkson / Auto-Tune

Automatic Minecraft Economy Plugin
https://scottborland.github.io/AutoTuneWebsite/
GNU General Public License v3.0
123 stars 25 forks source link

[BUG] Crash at server start #73

Open Cr4zyGeek opened 2 years ago

Cr4zyGeek commented 2 years ago

Describe the bug The plugin crash at server start

Steps To Reproduce

Expected behavior

Minecraft Server Version Paper 1.17.1

Auto-Tune-Version 0.14.0

Additional context https://pastebin.com/zm77yknm

noahbclarkson commented 2 years ago

Looks like an issue with the AdventureAPI. This issue should be fixed with changing

compileOnly "net.kyori:adventure-api:$adventureVersion"
compileOnly "net.kyori:adventure-text-minimessage:$adventureVersion"

to implementation in build.gradle. However, last time I did this it created more issues with dependencies. Maybe if we shade in just minimessage for now this issue will be fixed.

Cr4zyGeek commented 2 years ago

I tried with the build Java CI with Gradle #100 and now the error is different

[16:16:56] [Craft Scheduler Thread - 6 - Auto-Tune/WARN]: [Auto-Tune] Plugin Auto-Tune v0.14.0 generated an exception while executing task 33
java.lang.NoSuchMethodError: 'void org.bukkit.inventory.meta.ItemMeta.displayName(unprotesting.com.github.kyori.adventure.text.Component)'
    at unprotesting.com.github.data.Section.lambda$new$0(Section.java:38) ~[Auto-Tune-0.14.0.jar:?]
    at org.bukkit.inventory.ItemStack.editMeta(ItemStack.java:582) ~[paper.jar:git-Paper-402]
    at org.bukkit.inventory.ItemStack.editMeta(ItemStack.java:561) ~[paper.jar:git-Paper-402]
    at unprotesting.com.github.data.Section.(Section.java:38) ~[Auto-Tune-0.14.0.jar:?]
    at unprotesting.com.github.data.Database.loadSectionData(Database.java:212) ~[Auto-Tune-0.14.0.jar:?]
    at unprotesting.com.github.data.Database.lambda$new$0(Database.java:65) ~[Auto-Tune-0.14.0.jar:?]
    at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftTask.run(CraftTask.java:101) ~[paper.jar:git-Paper-402]
    at org.bukkit.craftbukkit.v1_17_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:57) ~[paper.jar:git-Paper-402]
    at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[paper.jar:git-Paper-402]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
    at java.lang.Thread.run(Thread.java:833) ~[?:?]
noahbclarkson commented 2 years ago

Auto-Tune will be supported on versions of paper that include the miniMessage and adventure API. This means that these libraries will be included in paper and so we don't need to shade them in. If you are getting the error "NoSuchMethodError" or "NoClassDefFoundError" you are probably using a version of paper that doesn't include adventure. This commit should have made Auto-Tune in-line with this. You can find more information on adventure and supported versions here.

Cr4zyGeek commented 2 years ago

I'm currently using paper 1.17.1 build 411 and the link you gave me indicate that is supported since the paper 1.16.5 build 473 so i think I'm good for it

noahbclarkson commented 2 years ago

Yes it should work with the latest commit

Cr4zyGeek commented 2 years ago

Unfortunately not, now I have this error at the start with the latest build

[12:24:53] [Server thread/ERROR]: Error occurred while enabling Auto-Tune v0.14.0 (Is it up to date?)
java.lang.NoClassDefFoundError: net/kyori/adventure/text/minimessage/MiniMessage
    at unprotesting.com.github.util.Format.loadLocale(Format.java:55) ~[Auto-Tune-0.14.0.jar:?]
    at unprotesting.com.github.config.Config.(Config.java:142) ~[Auto-Tune-0.14.0.jar:?]
    at unprotesting.com.github.config.Config.initializeConfig(Config.java:87) ~[Auto-Tune-0.14.0.jar:?]
    at unprotesting.com.github.config.Config.init(Config.java:77) ~[Auto-Tune-0.14.0.jar:?]
    at unprotesting.com.github.AutoTune.onEnable(AutoTune.java:33) ~[Auto-Tune-0.14.0.jar:?]
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:264) ~[paper.jar:git-Paper-402]
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:370) ~[paper.jar:git-Paper-402]
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:500) ~[paper.jar:git-Paper-402]
    at org.bukkit.craftbukkit.v1_17_R1.CraftServer.enablePlugin(CraftServer.java:561) ~[paper.jar:git-Paper-402]
    at org.bukkit.craftbukkit.v1_17_R1.CraftServer.enablePlugins(CraftServer.java:475) ~[paper.jar:git-Paper-402]
    at net.minecraft.server.MinecraftServer.loadWorld(MinecraftServer.java:733) ~[paper.jar:git-Paper-402]
    at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:317) ~[paper.jar:git-Paper-402]
    at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1220) ~[paper.jar:git-Paper-402]
    at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319) ~[paper.jar:git-Paper-402]
    at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.ClassNotFoundException: net.kyori.adventure.text.minimessage.MiniMessage
    at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:151) ~[paper.jar:git-Paper-402]
    at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:103) ~[paper.jar:git-Paper-402]
    at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
    ... 15 more
noahbclarkson commented 2 years ago

Ahh I see the issue. It looks like miniMessage isn't included in the 1.17 version of paper even though adventure is. I will try to find a way around this now