0、将本地编译好的需要修改的.class文件上传到服务器特定位置
例如:/shenbaoTest/目录下
1、使用curl工具从指定的URL下载文件(在项目jar包路径下执行)
curl -O https://arthas.aliyun.com/arthas-boot.jar
2、执行arthas-boot.jar(启动jar包)
java -jar arthas-boot.jar
3、精准找到已加载的类 sc -d (TaxSdsCommonQcServiceImpl找到这个类的位置)
sc -d com.aisino.report.service.tax.sds.TaxSdsCommonQcServiceImpl
4、找到 classLoaderHash ,取其后边的值(31221be2)
执行:redefine -c 31221be2 /shenbaoTest/TaxSdsCommonQcServiceImpl.class
注意:测试环境加载的class文件放上生产的话,两个环境jdk版本必须一致
原理:加载外部的 .class
文件,覆盖 JVM 已加载的类,
详细内容可参考:Arthas下载安装及使用介绍-CSDN博客