Error disabling WorldGuard v7.0.12 - "IllegalStateException: zip file closed"
servicomcr opened this issue ยท 1 comments
WorldEdit Version
v7.0.12+829a4a4
WorldGuard Version
v7.0.12+829a4a4
Platform Version
1.21 (Purpur-1.21-2284)
Confirmations
- I am using the most recent Minecraft release.
- I am using a version of WorldEdit compatible with my Minecraft version.
- I am using a version of WorldGuard compatible with my Minecraft version.
- I am using the latest or recommended version of my platform software.
- I am NOT using a hybrid server, e.g. a server that combines Bukkit and Forge. Examples include Arclight, Mohist, and Cardboard.
- I am NOT using a fork of WorldEdit, such as FastAsyncWorldEdit (FAWE) or AsyncWorldEdit (AWE)
Bug Description
Description:
When disabling WorldGuard on my Minecraft server, an error occurs. The error log points to an IllegalStateException: zip file closed related to the PluginClassLoader and a ProtectionStones interaction. Below is the full error log for reference.
Steps to Reproduce:
Run a server using Purpur version 1.21 with the following plugins:
WorldGuard v7.0.12
ProtectionStones v2.10.5
Disable the WorldGuard plugin while the server is running.
Observe the error during the disabling process.
Expected behavior:
WorldGuard should disable cleanly without throwing any exceptions.
ERROR LOG
[21:40:24 ERROR]: Error occurred while disabling WorldGuard v7.0.12+829a4a4
java.lang.IllegalStateException: zip file closed
at java.base/java.util.zip.ZipFile.ensureOpen(ZipFile.java:846) ~[?:?]
at java.base/java.util.zip.ZipFile.getEntry(ZipFile.java:338) ~[?:?]
at java.base/java.util.jar.JarFile.getEntry(JarFile.java:516) ~[?:?]
at java.base/java.util.jar.JarFile.getJarEntry(JarFile.java:471) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:209) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
...
Server Information:
Minecraft Version: 1.21 (Purpur-1.21-2284)
WorldGuard Version: 7.0.12+829a4a4
ProtectionStones Version: 2.10.5
WorldEdit Version: 7.3.6+6892-3d660b8
Java Version: OpenJDK 17
Additional Context:
It seems like the error is triggered during interaction between WorldGuard and ProtectionStones, particularly related to handling flags when shutting down the session. The error occurs during server shutdown or when WorldGuard is manually disabled.
https://www.spigotmc.org/resources/protectionstones-updated-for-1-20-6.61797/
Expected Behavior
[21:40:24 ERROR]: Error occurred while disabling WorldGuard v7.0.12+829a4a4
java.lang.IllegalStateException: zip file closed
at java.base/java.util.zip.ZipFile.ensureOpen(ZipFile.java:846) ~[?:?]
at java.base/java.util.zip.ZipFile.getEntry(ZipFile.java:338) ~[?:?]
at java.base/java.util.jar.JarFile.getEntry(JarFile.java:516) ~[?:?]
at java.base/java.util.jar.JarFile.getJarEntry(JarFile.java:471) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:209) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:593) ~[?:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:169) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:164) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:526) ~[?:?]
at ProtectionStones-2.10.5.jar/dev.espi.protectionstones.flags.FarewellFlagHandler.onAbsentValue(FarewellFlagHandler.java:73) ~[ProtectionStones-2.10.5.jar:?]
at ProtectionStones-2.10.5.jar/dev.espi.protectionstones.flags.FarewellFlagHandler.onAbsentValue(FarewellFlagHandler.java:37) ~[ProtectionStones-2.10.5.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.session.handler.FlagValueChangeHandler.onClearValue(FlagValueChangeHandler.java:86) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.session.handler.FlagValueChangeHandler.uninitialize(FlagValueChangeHandler.java:50) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.session.Session.uninitialize(Session.java:144) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.bukkit.session.BukkitSessionManager.shutdown(BukkitSessionManager.java:92) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.bukkit.BukkitWorldGuardPlatform.unload(BukkitWorldGuardPlatform.java:149) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.WorldGuard.disable(WorldGuard.java:206) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at worldguard-bukkit-7.0.12-dist.jar/com.sk89q.worldguard.bukkit.WorldGuardPlugin.onDisable(WorldGuardPlugin.java:266) ~[worldguard-bukkit-7.0.12-dist.jar:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:291) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.disablePlugin(PaperPluginInstanceManager.java:237) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.disablePlugins(PaperPluginInstanceManager.java:161) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.disablePlugins(PaperPluginManagerImpl.java:97) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:541) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.CraftServer.disablePlugins(CraftServer.java:623) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at net.minecraft.server.MinecraftServer.stopServer(MinecraftServer.java:1058) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at net.minecraft.server.dedicated.DedicatedServer.stopServer(DedicatedServer.java:883) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1389) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:333) ~[purpur-1.21.jar:1.21-2284-4e55e26]
at java.base/java.lang.Thread.run(Thread.java:1583) ~[?:?]
[21:40:24 INFO]: [WorldEdit] Disabling WorldEdit v7.3.6+6892-3d660b8
Reproduction Steps
- ...
- ...
x1.21 (Purpur-1.21-2284)
Optional WorldGuard-Report
https://paste.enginehub.org/sTek1WWQZ.report
Anything Else?
n/a