Closed re7gog closed 3 months ago
The problem is, on java 21 the reflection does not work anymore as noted on the mentioned text you sent.
Also the problem of:
Beware, the Java JIT compiler will assume that final fields don't change value at runtime, so the value you write there using Unsafe might not actually be read back by some code. This can lead to inconsistent states, where some methods might see the old value while other ones will see the new value, especially if you change the value down a callchain that already read the value earlier.
Anyway, i implemted it! Tested here on local server and seemed to work! I also have a modified version of the WorldGuard that will work for 'eternity' in case the UNSAFE stop working.
More details of the modified WorldGuard here! https://discord.petrus.dev/ https://discord.com/channels/899151012290498620/1251646424651927683/threads/1251658896183922799
If you want the dev jar for EverNifeCore 2.0.4 just call me on discord, the next release might take some time yet.
Fixed at cdff4555e66fa93170a22b4f2016805555b0b3a0
Running crucible on java 21 Core and final restrictor drops errors when trying to get reflective access to worldguard Exacly as in https://github.com/GTNewHorizons/lwjgl3ify?tab=readme-ov-file#javabasejavalangreflect-classes-are-protected-from-reflective-access
Here is error: [[174127] [Server threadINFO] Final.txt