利用arthas动态反编译线上文件

2023-12-07  本文已影响0人  刘大坝
## 第一步:反编译
jad --source-only com.product.modules.mq.kafka.KafkaConfiguration > /app/arthas/KafkaConfiguration.java
 
 
## 第二部:查看类加载器 
sc -d *KafkaConfiguration | grep classLoaderHash
 
## 第三步:编译
mc -c 21b8d17c /app/arthas/KafkaConfiguration.java -d /app/arthas/
 
## 第四部:热加载
redefine /app/arthas/com/product/modules/mq/kafka/KafkaConfiguration.class

粗解:

1、com.product.modules.mq.kafka.KafkaConfiguration:为你需要编辑的类(不带.class)
2、/app/arthas/KafkaConfiguration.java :你需要反编译后的本地磁盘路径(带.java结尾)
3、第3步的hashcode为第二步获得的classLoader 的hash值
4、编译后的文件存在的目录是 /app/arthas/ 加上你类的全路径

原文地址:
https://blog.csdn.net/cold_Blooder/article/details/134677277

上一篇 下一篇

猜你喜欢

热点阅读