CrucibleMC / Crucible

Crucible, a fork of Thermos, is a CraftBukkit and Forge server implementation for 1.7.10, providing the ability to load both Forge mods and Bukkit plugins alongside each other.
https://discord.gg/jWSTJ4d
GNU General Public License v3.0
184 stars 63 forks source link

Crucible incompatible with OpenJ9 SharedCache #92

Open Zilacon opened 2 years ago

Zilacon commented 2 years ago

Using OJ9 SharedCache will cause the server to crash, and the FML Security will throw errors 2022-01-05-4.log

I am not having an issue using OJ9 Cache on my 1.5.2/1.6.4/1.12.2 servers.

juanmuscaria commented 2 years ago

Avoid using shared classes with forge, or at least make sure to only use -Xshareclasses:bootClassesOnly without Ahead of Time compilation. In general, forge itself has several issues with class transformation and openj9 which are far from our reach to even try to fix.

Zilacon commented 2 years ago

But as i said, every other server software i use, even the original hybrid servers that we had to force patch to allow java 8 even works with it. But it doesnt with crucible...

drori200 commented 2 years ago

Could be related to a8f15e4a0a6f7ac0ea74a6e94c4a6828ad819544

Zilacon commented 2 years ago

Could be related to a8f15e4

No, that patch was at the request of me to add oj9 support. Without that crucible doesnt even start using oj9.

juanmuscaria commented 2 years ago

Crucible itself works just fine with -Xshareclasses, the problem is that forge class transformation is unstable with openj9 in general, specially with class sharing, as you can see in the logs everything is beyond broken, logic pipes can't register its transformers, grimoire can't load properly as a forge mod, most stacktraces are broken with "" everywhere, javapatcher failed to apply one patch. I tried to reproduce those errors locally, but it works just fine except from the broken stacktraces and freezing when forge security manager tries to catch a bad exit.