arthas热更新class

发布时间 2024-01-13 14:47:23作者: 赵钱富贵

安装和启动

下载 https://arthas.aliyun.com/doc/download.html
解压 arthas的zip

热更新代码

  • 找到项目进程号

ps -ef | grep Project

返回 2222

  • 启动并选择jvm进程

    java -jar arthus-boot.jar

  • jad反编译代码,另存为.java 文件

jad --source-only com.tiandy.testdemo.TestDemoApplication > /var/TestDemoApplication.java

  • 修改代码

vim /var/TestDemoApplication.java

  • 查找这个类的类加载器

sc -d *TestDemoApplication | grep classLoaderHash

返回 de5a126b

  • 编译为class文件

mc -c de5a126b /var/TestDemoApplication.java -d /var/TestDemoApplication.class

  • 若编译失败

    将IDE编译的class放入

  • 热更新class文件

redefine -c de5a126b /var/TestDemoApplication.class