eldoriarpg / BigDoorOpener

Control the state of doors created by BigDoors by time and by approaching, permissions and more.
GNU Affero General Public License v3.0
5 stars 4 forks source link

BDO fails to load on Java 16 #47

Closed SlimeDog closed 3 years ago

SlimeDog commented 3 years ago

Platform CentOS Linux release 7.9.2009 (Core) Java 16.0.1 Paper 1.16.5-b669 BigDoors 0.1.8.28-b882 BigDoorsOpener 2.4.1a

Problem BDO fails to load on Java 16. Reflection is not supported. Mojang and Paper have announced that they will support only Java 16 for MC 1.17; Spigot is likely to follow suit.

Stacktrace

[18:38:13] [Server thread/ERROR]: Could not load 'plugins/BigDoorsOpener-2.4.1a.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.reflect.InaccessibleObjectException: Unable to make private java.lang.Class$AnnotationData java.lang.Class.annotationData() accessible: module java.base does not "opens java.lang" to unnamed module @4e7a2ac3
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:141) ~[patched_1.16.5.jar:git-Paper-669]
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:397) ~[patched_1.16.5.jar:git-Paper-669]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:305) ~[patched_1.16.5.jar:git-Paper-669]
        at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:389) ~[patched_1.16.5.jar:git-Paper-669]
        at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:252) ~[patched_1.16.5.jar:git-Paper-669]
        at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1066) ~[patched_1.16.5.jar:git-Paper-669]
        at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:290) ~[patched_1.16.5.jar:git-Paper-669]
        at java.lang.Thread.run(Thread.java:831) [?:?]
Caused by: java.lang.reflect.InaccessibleObjectException: Unable to make private java.lang.Class$AnnotationData java.lang.Class.annotationData() accessible: module java.base does not "opens java.lang" to unnamed module @4e7a2ac3
        at java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357) ~[?:?]
        at java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297) ~[?:?]
        at java.lang.reflect.Method.checkCanSetAccessible(Method.java:199) ~[?:?]
        at java.lang.reflect.Method.setAccessible(Method.java:193) ~[?:?]
        at de.eldoria.bigdoorsopener.eldoutilities.utils.ReflectionUtil.alterAnnotationValue(ReflectionUtil.java:41) ~[?:?]
        at de.eldoria.bigdoorsopener.eldoutilities.utils.ReflectionUtil.changeSerializedName(ReflectionUtil.java:34) ~[?:?]
        at de.eldoria.bigdoorsopener.eldoutilities.core.EldoUtilities.preWarm(EldoUtilities.java:81) ~[?:?]
        at de.eldoria.bigdoorsopener.eldoutilities.plugin.EldoPlugin.registerSelf(EldoPlugin.java:58) ~[?:?]
        at de.eldoria.bigdoorsopener.eldoutilities.plugin.EldoPlugin.<init>(EldoPlugin.java:45) ~[?:?]
        at de.eldoria.bigdoorsopener.core.BigDoorsOpener.<init>(BigDoorsOpener.java:63) ~[?:?]
        at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:?]
        at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:78) ~[?:?]
        at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:?]
        at java.lang.reflect.Constructor.newInstanceWithCaller(Constructor.java:499) ~[?:?]
        at java.lang.reflect.ReflectAccess.newInstance(ReflectAccess.java:128) ~[?:?]
        at jdk.internal.reflect.ReflectionFactory.newInstance(ReflectionFactory.java:350) ~[?:?]
        at java.lang.Class.newInstance(Class.java:642) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:91) ~[patched_1.16.5.jar:git-Paper-669]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:137) ~[patched_1.16.5.jar:git-Paper-669]
        ... 7 more
rainbowdashlabs commented 3 years ago

Thanks for the report.

This issue is already fixed in EldoUtilities and will be fixed with the next BDO release ^-^

Maybe I can release it tomorrow ^^

SlimeDog commented 3 years ago

Excellent.

SlimeDog commented 3 years ago

As noted, this issue is resolved with BDO 2.4.1b + NashornJs 1.0.