1、下载arthas
wget https://arthas.aliyun.com/arthas-boot.jar
2、启动arthas
java -jar arthas-boot.jar
3、查找指定类及classloader
sc -d *EasyExcelListener
4、反编译class生成java
jad --lineNumber false --source-only com.anlitech.EasyExcelListener > /mnt/EasyExcelListener.java
5、修改java文件内容
vi /mnt/EasyExcelListener.java
6、编译java文件生成class
mc -c 685f4c2e /mnt/EasyExcelListener.java -d /mnt
7、将新编译的class文件加载到内存中
redefine /mnt/EasyExcelListener.class
redefine命令和jad/watch/trace/monitor/tt等命令会冲突。执行完redefine之后,如果再执行上面提到的命令,则会把redefine的字节码重置。原因是jdk本身redefine和Retransform 是不同的机制,同时使用两种机制来更新字节码,只有最后修改的会生效。