<dependency> <groupId>org.apache.xbean</groupId> <artifactId>xbean-asm-shaded</artifactId> <version>4.15</version> </dependency> import org.apache.xbean.asm.shaded.commons.ClassWriter; import org.apache.xbean.asm.shaded.commons.MethodVisitor; public class HelloWorld { public static void main(String[] args) { ClassWriter cw = new ClassWriter(ClassWriter.COMPUTE_FRAMES); cw.visit( /* ... */ ); MethodVisitor mv = cw.visitMethod( /* ... */ ); mv.visitCode(); mv.visitVarInsn(ALOAD, 0); mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V", false); mv.visitInsn(RETURN); mv.visitMaxs(1, 1); mv.visitEnd(); byte[] bytecode = cw.toByteArray(); Class<?> helloWorldClass = new CustomClassLoader().defineClass("HelloWorld", bytecode); Object helloWorld = helloWorldClass.newInstance(); helloWorld.getClass().getMethod("sayHello").invoke(helloWorld); } }


上一篇:
下一篇:
切换中文