启动一个sprint-boot工程,增加controller,增加方法。
@RequestMapping("/testRefineClass")
public String testRefineClass() throws Exception{
Thread.currentThread().sleep(60000);
return "Hello";
}
1.启动arthars java -jar arthas-boot.jar
2.选择PID
3.jad --source-only com.xxh.MyArthasTest > d:/tmp/MyArthasTest.java
4.查找classLoaderHash sc -d *MyArthasTest | grep classLoaderHash 例如:4e0e2f2a
5.mc进行编译: mc -c 4e0e2f2a d:/tmp/MyArthasTest.java 例如输出为:D:/myWorkspace/TestArthars/com/xxh/MyArthasTest.class
6.热加载:根据mc输出的路径 redefine D:/myWorkspace/TestArthars/com/xxh/MyArthasTest.class
7.观察浏览器的用户请求是否中断。