arthas的class、classLoader相关命令
arthas的class、classLoader相关命令
1. sc : Search Class 搜索类
sc demo.MathGame -d #类的详细信息
sc demo.MathGame -df #加上成员变量的信息
2. sm : Search Method 搜索方法
sm demo.MathGame 查看这类下面的方法
sm demo.MathGame -d 查看这个类下面的方法的详细信息
3. jad 把字节码文件反编译成源代码
4. mc 在内存当中把源代码编译成字节码文件
5. redefine 把新生成的字节码文件在内存中执行(不允许增加成员变量field和方法method,正在跑的函数,没有推出不能生效)
jad --source-only demo.MathGame > /root/MathGame.java # MathGame.class 反编译到root目录下MathGame.java文件下
vim MathGame.java # vim编辑java文件,然后保存退出
mc /root/MathGame.java -d /root # 将/root/MathGame.java编译成class文件放到root文件下
redefine /root/demo/MathGame.class # 把新生成的字节码文件在内存中执行