Package javassist.util.proxy
Class DefineClassHelper
- java.lang.Object
-
- javassist.util.proxy.DefineClassHelper
-
public class DefineClassHelper extends java.lang.ObjectHelper class for invokingClassLoader.defineClass(String,byte[],int,int).- Since:
- 3.22
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.Class<?>toClass(java.lang.String className, java.lang.ClassLoader loader, java.security.ProtectionDomain domain, byte[] bcode)Loads a class file by a given class loader.
-
-
-
Method Detail
-
toClass
public static java.lang.Class<?> toClass(java.lang.String className, java.lang.ClassLoader loader, java.security.ProtectionDomain domain, byte[] bcode) throws CannotCompileExceptionLoads a class file by a given class loader.This first tries to use
sun.misc.Unsafeto load a class. Then it tries to use aprotectedmethod injava.lang.ClassLoaderviaPrivilegedAction. Since the latter approach is not available any longer by default in Java 9 or later, the JVM argument--add-opens java.base/java.lang=ALL-UNNAMEDmust be given to the JVM. If this JVM argument cannot be given,toPublicClass(String,byte[])should be used instead.- Parameters:
domain- if it is null, a default domain is used.- Throws:
CannotCompileException- Since:
- 3.22
-
-