Throwing the plugin into plugins/ folder and then reloading the server with /reload causes the plugin to fail with
java.lang.NullPointerException: Cannot read field "enabled" because the return value of "me.jonahisadev.treeme.PlayerStore.state(java.util.UUID)" is null
Fully stopping the server and then starting it again solves the issue.
Stack trace(s) + info
```
[12:08:47] [Server thread/INFO]: Krzesu0 issued server command: /treeme toggle
[12:08:47] [Server thread/ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'treeme' in plugin TreeMe v1.4.3
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchCommand(CraftServer.java:800) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1937) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1776) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1757) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:30) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:151) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.c(SourceFile:23) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1157) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:1) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandler.y(SourceFile:125) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1136) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1129) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:134) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1113) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1037) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:303) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.NullPointerException: Cannot read field "enabled" because "val" is null
at me.jonahisadev.treeme.PlayerStore.toggle(PlayerStore.java:34) ~[?:?]
at me.jonahisadev.treeme.ChopCommand.onCommand(ChopCommand.java:41) ~[?:?]
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
... 21 more
[12:10:06] [Server thread/ERROR]: Could not pass event BlockBreakEvent to TreeMe v1.4.3
org.bukkit.event.EventException: null
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:589) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:576) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:346) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:306) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:276) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1472) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.network.protocol.game.PacketPlayInBlockDig.a(SourceFile:34) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.network.protocol.game.PacketPlayInBlockDig.a(SourceFile:8) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:30) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:151) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.c(SourceFile:23) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1157) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:1) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandler.y(SourceFile:125) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1136) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1129) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:134) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1113) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1037) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:303) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701]
at java.lang.Thread.run(Thread.java:833) [?:?]
Caused by: java.lang.NullPointerException: Cannot read field "enabled" because the return value of "me.jonahisadev.treeme.PlayerStore.state(java.util.UUID)" is null
at me.jonahisadev.treeme.ChopListener.onChop(ChopListener.java:38) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?]
... 23 more
```
```
>ver
[12:28:16] [Server thread/INFO]: This server is running CraftBukkit version 3336-Spigot-a5dea1c-a008701 (MC: 1.18) (Implementing API version 1.18-R0.1-SNAPSHOT)
```
Ooh, I haven't worked on this plugin in a while! This weekend and next week are my finals for the semester, so it will probably be some time before I can get around to looking at this
Throwing the plugin into
plugins/
folder and then reloading the server with/reload
causes the plugin to fail withFully stopping the server and then starting it again solves the issue.
Stack trace(s) + info
``` [12:08:47] [Server thread/INFO]: Krzesu0 issued server command: /treeme toggle [12:08:47] [Server thread/ERROR]: null org.bukkit.command.CommandException: Unhandled exception executing command 'treeme' in plugin TreeMe v1.4.3 at org.bukkit.command.PluginCommand.execute(PluginCommand.java:47) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:149) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] at org.bukkit.craftbukkit.v1_18_R1.CraftServer.dispatchCommand(CraftServer.java:800) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1937) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1776) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1757) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:46) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.network.protocol.game.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:30) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:151) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.c(SourceFile:23) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1157) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:1) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandler.y(SourceFile:125) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1136) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1129) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:134) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1113) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1037) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:303) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at java.lang.Thread.run(Thread.java:833) [?:?] Caused by: java.lang.NullPointerException: Cannot read field "enabled" because "val" is null at me.jonahisadev.treeme.PlayerStore.toggle(PlayerStore.java:34) ~[?:?] at me.jonahisadev.treeme.ChopCommand.onCommand(ChopCommand.java:41) ~[?:?] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:45) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] ... 21 more [12:10:06] [Server thread/ERROR]: Could not pass event BlockBreakEvent to TreeMe v1.4.3 org.bukkit.event.EventException: null at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:310) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:589) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:576) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:346) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:306) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.level.PlayerInteractManager.a(PlayerInteractManager.java:276) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.network.PlayerConnection.a(PlayerConnection.java:1472) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.network.protocol.game.PacketPlayInBlockDig.a(SourceFile:34) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.network.protocol.game.PacketPlayInBlockDig.a(SourceFile:8) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.network.protocol.PlayerConnectionUtils.lambda$0(PlayerConnectionUtils.java:30) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.TickTask.run(SourceFile:18) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:151) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandlerReentrant.c(SourceFile:23) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.b(MinecraftServer.java:1157) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.c(MinecraftServer.java:1) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandler.y(SourceFile:125) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.bf(MinecraftServer.java:1136) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.y(MinecraftServer.java:1129) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.util.thread.IAsyncTaskHandler.c(SourceFile:134) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.x(MinecraftServer.java:1113) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:1037) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at net.minecraft.server.MinecraftServer.lambda$0(MinecraftServer.java:303) ~[spigot-1.18-R0.1-SNAPSHOT.jar:3336-Spigot-a5dea1c-a008701] at java.lang.Thread.run(Thread.java:833) [?:?] Caused by: java.lang.NullPointerException: Cannot read field "enabled" because the return value of "me.jonahisadev.treeme.PlayerStore.state(java.util.UUID)" is null at me.jonahisadev.treeme.ChopListener.onChop(ChopListener.java:38) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?] at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?] at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?] at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?] at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-api-1.18-R0.1-SNAPSHOT.jar:?] ... 23 more ``` ``` >ver [12:28:16] [Server thread/INFO]: This server is running CraftBukkit version 3336-Spigot-a5dea1c-a008701 (MC: 1.18) (Implementing API version 1.18-R0.1-SNAPSHOT) ```