# Arthas
你是否遇到过这种情况,每次运维帮你项目部署后,你发现线上代码还是老版本。然后陷入扯皮之中。 artahs这款工具,能让你直接在线上查看运行中的代码,以后在扯皮就直接把代码截图到群里 然后发个/:8*符号。(会不会被打死另说)
# 热修复
- 反编译代码(ats)
jad --source-only
com.example.demo.arthas.user.UserController > /tmp/UserController.java
- 编辑代码
vim /tmp/UserController.java
- sc查找classloader(ats)
sc -d *UserController | grep classLoaderHash
- mc编译
mc -c 1be6f5c3 /tmp/UserController.java -d /tmp
------或者
mc --classLoaderClass
org.springframework.boot.loader.LaunchedURLClassLoader
/tmp/UserController.java -d /tmp
- retransform加载
retransform /tmp/com/example/demo/arthas/user/UserController.class
# 查看线上运行代码
← Kafka学习总结 Intelij一些设置 →