public class ClassUtils
extends java.lang.Object
| 构造器和说明 |
|---|
ClassUtils() |
| 限定符和类型 | 方法和说明 |
|---|---|
static byte[] |
insertCode(java.lang.String classMethod,
java.lang.String javaCode,
int line,
java.io.File libDir,
java.io.File thisJar)
给方法插入代码并返回bytecode的字节数组
|
static void |
loadClassPath(javassist.ClassPool pool,
java.io.File dir)
加载jar包路径
|
static void |
loadClassPath(javassist.ClassPool pool,
java.util.List<java.lang.String> paths)
加载jar包路径
|
static byte[] |
rewriteAllMethods(javassist.ClassPool pool,
java.lang.String classname)
清空方法
|
static void |
setBodyKeepParamInfos(javassist.CtMethod m,
java.lang.String src,
boolean rebuild)
修改方法体,并且保留参数信息
|
public static byte[] rewriteAllMethods(javassist.ClassPool pool,
java.lang.String classname)
pool - javassist的ClassPoolclassname - 要修改的class全名public static void setBodyKeepParamInfos(javassist.CtMethod m,
java.lang.String src,
boolean rebuild)
throws javassist.CannotCompileException
m - javassist的方法src - java代码rebuild - 是否重新构建javassist.CannotCompileException - 编译异常public static void loadClassPath(javassist.ClassPool pool,
java.util.List<java.lang.String> paths)
pool - javassist的ClassPoolpaths - lib路径,public static void loadClassPath(javassist.ClassPool pool,
java.io.File dir)
pool - javassist的ClassPooldir - lib路径或jar文件public static byte[] insertCode(java.lang.String classMethod,
java.lang.String javaCode,
int line,
java.io.File libDir,
java.io.File thisJar)
throws java.lang.Exception
classMethod - 类名#方法名javaCode - 代码line - 行数libDir - classpaththisJar - 本项目的jar路径java.lang.Exception - ExceptionCopyright © 2020. All Rights Reserved.