So the problem here is that JDK 12 changed our options around class defining again, namely disallowed us to use Unsafe to crack open ClassLoader methods. It's known problem, the issues you linked are part of it. Weld itself however does the same thing as classfilewriter hence is a source of these problems as well. There is a similar issue under WELD-2556 which I created and where I have a "fix" for this in EE servers. Though your problem is in SE or servlet where Weld has to define classes. In such case I do not yet know how to fix it. JDK 12 disallows us to anyhow use CL's defineClass() methods but using MethodHandles.Lookup isn't sufficient either. |