ProtocolLib

3M Downloads

[ProtocolLib] INTERNAL ERROR: Cannot compile structure. Disabing compiler.

lucaszischka opened this issue ยท 5 comments

commented

Hello,
discovered this error on the latest release and I don't know what to do. "If this problem hasn't already been reported, please open a ticket", but there are right now 294 open issues and I don't know how to search them.

Sorry for the inconvenience if it is already reported or fixed.

The server isn't crashing or anything, but I always get this report in the console - in nearly any world.

Btw there is also a spelling error ln.1: "Disabing compiler." should be "Disabling compiler.". Sorry if I'm a jerk but I just wanna help.

[19:24:05 ERROR]:   [ProtocolLib] INTERNAL ERROR: Cannot compile structure. Disabing compiler.
  If this problem hasn't already been reported, please open a ticket
  at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
  Stack Trace:
  java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @111861e9
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357)
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
        at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
        at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
        at com.comphenix.protocol.reflect.compiler.StructureCompiler.generateClass(StructureCompiler.java:299)
        at com.comphenix.protocol.reflect.compiler.StructureCompiler.compile(StructureCompiler.java:213)
        at com.comphenix.protocol.reflect.compiler.BackgroundCompiler$2.call(BackgroundCompiler.java:204)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
        at java.base/java.lang.Thread.run(Thread.java:831)
  Dump:
  Parameters:
    com.comphenix.protocol.reflect.StructureModifier@176a4f4e[
      targetType=class net.minecraft.server.v1_16_R3.PacketPlayInFlying$PacketPlayInPositionLook
      target=<null>
      converter=<null>
      fieldType=class java.lang.Object
      data=[public double net.minecraft.server.v1_16_R3.PacketPlayInFlying.x, public double net.minecraft.server.v1_16_R3.PacketPlayInFlying.y, public double net.minecraft.server.v1_16_R3.PacketPlayInFlying.z, public float net.minecraft.server.v1_16_R3.PacketPlayInFlying.yaw, public float net.minecraft.server.v1_16_R3.PacketPlayInFlying.pitch, protected boolean net.minecraft.server.v1_16_R3.PacketPlayInFlying.f, public boolean net.minecraft.server.v1_16_R3.PacketPlayInFlying.hasPos, public boolean net.minecraft.server.v1_16_R3.PacketPlayInFlying.hasLook]
      defaultFields={}
      subtypeCache={}
      customConvertHandling=false
      useStructureCompiler=true
    ]
    manager:
      com.comphenix.protocol.injector.PacketFilterManager@2790250e[
        unhookTask=com.comphenix.protocol.injector.DelayedSingleTask@5d7d65d9
        packetListeners=[PacketAdapter[plugin=AntiCheatReloaded, sending=EMPTY_WHITELIST, receiving=ListeningWhitelist[priority=LOWEST, packets=[BLOCK_DIG[class=PacketPlayInBlockDig, id=27]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=AntiCheatReloaded, sending=ListeningWhitelist[priority=LOWEST, packets=[POSITION[class=PacketPlayOutPosition, id=52], POSITION_LOOK[class=PacketPlayInPositionLook, id=19], POSITION[class=PacketPlayInPosition, id=18]], gamephase=PLAYING, options=[]], receiving=ListeningWhitelist[priority=LOWEST, packets=[POSITION[class=PacketPlayOutPosition, id=52], POSITION_LOOK[class=PacketPlayInPositionLook, id=19], POSITION[class=PacketPlayInPosition, id=18]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=AntiCheatReloaded, sending=ListeningWhitelist[priority=LOWEST, packets=[KEEP_ALIVE[class=PacketPlayInKeepAlive, id=16], KEEP_ALIVE[class=PacketPlayOutKeepAlive, id=31]], gamephase=PLAYING, options=[]], receiving=ListeningWhitelist[priority=LOWEST, packets=[KEEP_ALIVE[class=PacketPlayInKeepAlive, id=16], KEEP_ALIVE[class=PacketPlayOutKeepAlive, id=31]], gamephase=PLAYING, options=[]]]]
        packetInjector=com.comphenix.protocol.injector.netty.ProtocolInjector$5@18a84107
        playerInjection=com.comphenix.protocol.injector.netty.ProtocolInjector$4@6d6d4bef
        inputBufferedPackets=[]
        recievedListeners=com.comphenix.protocol.injector.SortedPacketListenerList@4bf3bb19
        sendingListeners=com.comphenix.protocol.injector.SortedPacketListenerList@7d165c13
        hasClosed=false
        classLoader=PluginClassLoader{plugin=ProtocolLib v4.6.0, pluginEnabled=true, url=plugins\ProtocolLib.jar}
        reporter=com.comphenix.protocol.ProtocolLib$1@276c8acf
        server=CraftServer{serverName=Paper,serverVersion=git-Paper-564,minecraftVersion=1.16.5}
        library=ProtocolLib v4.6.0
        asyncFilterManager=com.comphenix.protocol.async.AsyncFilterManager@76a4c38f
        knowsServerPackets=true
        knowsClientPackets=true
        phaseLoginCount=0
        phasePlayingCount=5
        packetCreation=false
        nettyInjector=com.comphenix.protocol.injector.netty.ProtocolInjector@464677be
        pluginVerifier=com.comphenix.protocol.injector.PluginVerifier@10719165
        hasRecycleDistance=true
        minecraftVersion=(MC: 1.16.5)
        debug=false
      ]
  Sender:
    com.comphenix.protocol.reflect.compiler.BackgroundCompiler@4b4ad3d9[
      listeners={com.comphenix.protocol.reflect.compiler.StructureCompiler$StructureKey@31fe1a22=[com.comphenix.protocol.injector.StructureCache$1@2e33c871]}
      listenerLock=java.lang.Object@5b3db18e
      compiler=com.comphenix.protocol.reflect.compiler.StructureCompiler@47dbe935
      enabled=false
      shuttingDown=false
      executor=java.util.concurrent.Executors$FinalizableDelegatedExecutorService@5a923e0c
      reporter=com.comphenix.protocol.ProtocolLib$1@276c8acf
      unknownPermGenBean=java.lang.Object@6a52056f
      permGenBean=<null>
      disablePermGenFraction=0.65
    ]
  Version:
    ProtocolLib v4.6.0
  Java Version:
    16
  Server:
    git-Paper-564 (MC: 1.16.5)
commented

Nevermind im stupid

commented

Ok, nevermind I'm maybe not stupid. I'm now using the snapshot version of "ProtocolLib", but it still throws the error.

[20:04:14 ERROR]:   [ProtocolLib] INTERNAL ERROR: Cannot compile structure. Disabing compiler.
  If this problem hasn't already been reported, please open a ticket
  at https://github.com/dmulloy2/ProtocolLib/issues with the following data:
  Stack Trace:
  java.lang.reflect.InaccessibleObjectException: Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) throws java.lang.ClassFormatError accessible: module java.base does not "opens java.lang" to unnamed module @73525c9d
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:357)
        at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:297)
        at java.base/java.lang.reflect.Method.checkCanSetAccessible(Method.java:199)
        at java.base/java.lang.reflect.Method.setAccessible(Method.java:193)
        at com.comphenix.protocol.reflect.compiler.StructureCompiler.generateClass(StructureCompiler.java:299)
        at com.comphenix.protocol.reflect.compiler.StructureCompiler.compile(StructureCompiler.java:213)
        at com.comphenix.protocol.reflect.compiler.BackgroundCompiler$2.call(BackgroundCompiler.java:204)
        at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
        at java.base/java.lang.Thread.run(Thread.java:831)
  Dump:
  Parameters:
    com.comphenix.protocol.reflect.StructureModifier@6ac4e80d[
      targetType=class net.minecraft.server.v1_16_R3.PacketPlayInFlying$PacketPlayInPositionLook
      target=<null>
      converter=<null>
      fieldType=class java.lang.Object
      data=[public double net.minecraft.server.v1_16_R3.PacketPlayInFlying.x, public double net.minecraft.server.v1_16_R3.PacketPlayInFlying.y, public double net.minecraft.server.v1_16_R3.PacketPlayInFlying.z, public float net.minecraft.server.v1_16_R3.PacketPlayInFlying.yaw, public float net.minecraft.server.v1_16_R3.PacketPlayInFlying.pitch, protected boolean net.minecraft.server.v1_16_R3.PacketPlayInFlying.f, public boolean net.minecraft.server.v1_16_R3.PacketPlayInFlying.hasPos, public boolean net.minecraft.server.v1_16_R3.PacketPlayInFlying.hasLook]
      defaultFields={}
      subtypeCache={}
      customConvertHandling=false
      useStructureCompiler=true
    ]
    manager:
      com.comphenix.protocol.injector.PacketFilterManager@4eb620e1[
        unhookTask=com.comphenix.protocol.injector.DelayedSingleTask@6b205c19
        packetListeners=[PacketAdapter[plugin=AntiCheatReloaded, sending=ListeningWhitelist[priority=LOWEST, packets=[KEEP_ALIVE[class=PacketPlayInKeepAlive, id=16], KEEP_ALIVE[class=PacketPlayOutKeepAlive, id=31]], gamephase=PLAYING, options=[]], receiving=ListeningWhitelist[priority=LOWEST, packets=[KEEP_ALIVE[class=PacketPlayInKeepAlive, id=16], KEEP_ALIVE[class=PacketPlayOutKeepAlive, id=31]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=AntiCheatReloaded, sending=EMPTY_WHITELIST, receiving=ListeningWhitelist[priority=LOWEST, packets=[BLOCK_DIG[class=PacketPlayInBlockDig, id=27]], gamephase=PLAYING, options=[]]], PacketAdapter[plugin=AntiCheatReloaded, sending=ListeningWhitelist[priority=LOWEST, packets=[POSITION_LOOK[class=PacketPlayInPositionLook, id=19], POSITION[class=PacketPlayInPosition, id=18], POSITION[class=PacketPlayOutPosition, id=52]], gamephase=PLAYING, options=[]], receiving=ListeningWhitelist[priority=LOWEST, packets=[POSITION_LOOK[class=PacketPlayInPositionLook, id=19], POSITION[class=PacketPlayInPosition, id=18], POSITION[class=PacketPlayOutPosition, id=52]], gamephase=PLAYING, options=[]]]]
        packetInjector=com.comphenix.protocol.injector.netty.ProtocolInjector$5@26e945f0
        playerInjection=com.comphenix.protocol.injector.netty.ProtocolInjector$4@7115280a
        inputBufferedPackets=[]
        recievedListeners=com.comphenix.protocol.injector.SortedPacketListenerList@e5bafe1
        sendingListeners=com.comphenix.protocol.injector.SortedPacketListenerList@6772faa7
        hasClosed=false
        classLoader=PluginClassLoader{plugin=ProtocolLib v4.6.1-SNAPSHOT-b498, pluginEnabled=true, url=plugins\ProtocolLib.jar}
        reporter=com.comphenix.protocol.ProtocolLib$1@b58e57c
        server=CraftServer{serverName=Paper,serverVersion=git-Paper-564,minecraftVersion=1.16.5}
        library=ProtocolLib v4.6.1-SNAPSHOT-b498
        asyncFilterManager=com.comphenix.protocol.async.AsyncFilterManager@a24049
        knowsServerPackets=true
        knowsClientPackets=true
        phaseLoginCount=0
        phasePlayingCount=5
        packetCreation=false
        nettyInjector=com.comphenix.protocol.injector.netty.ProtocolInjector@531b1536
        pluginVerifier=com.comphenix.protocol.injector.PluginVerifier@a9e3698
        hasRecycleDistance=true
        minecraftVersion=(MC: 1.16.5)
        debug=false
      ]
  Sender:
    com.comphenix.protocol.reflect.compiler.BackgroundCompiler@64d032a1[
      listeners={com.comphenix.protocol.reflect.compiler.StructureCompiler$StructureKey@c192f57f=[com.comphenix.protocol.injector.StructureCache$1@685f085c]}
      listenerLock=java.lang.Object@636602c4
      compiler=com.comphenix.protocol.reflect.compiler.StructureCompiler@18b7d2c6
      enabled=false
      shuttingDown=false
      executor=java.util.concurrent.Executors$FinalizableDelegatedExecutorService@7d17be4b
      reporter=com.comphenix.protocol.ProtocolLib$1@b58e57c
      unknownPermGenBean=java.lang.Object@6d1a445d
      permGenBean=<null>
      disablePermGenFraction=0.65
    ]
  Version:
    ProtocolLib v4.6.1-SNAPSHOT-b498
  Java Version:
    16
  Server:
    git-Paper-564 (MC: 1.16.5)
commented

You might want to test if #1120 resolves your issue, since that one is targeted for your Java version.
When in doubt you can always downgrade to an older, more supported java version such as Java 11 or Java 15.
Java 16 isn't that much in fluctuation, so support isn't going to be too great

commented

Thank you. I tried 11 already and I'm getting a similar error. Not this long or this exactly but also about "Cannot compile structure"

commented

background compiler: false
in config.yml