编程语言
首页 > 编程语言> > arthas进行java应用不停服务情况下的class文件热部署更新

arthas进行java应用不停服务情况下的class文件热部署更新

作者:互联网

我们在工作的过程中会遇到java应用已经部署或升级投入使用,发现某个单元文件有bug需要修正,但是客户的应用目前不能停止,而且不能因为一个非致命的bug来进行整个平台的一次升级。我们需要进行单文件的更新在不停线的情况下。

下面是具体的操作步骤

一、下载arthas工具 arthas.aliyun.com

二、对需要进行更新的java单元文件进行编译,生成最新的 class。

intelj里的操作:打开编辑的java单元文件,构建|重新编译 .....java,新生成的class文件与原代码文件会在同一目录,将生成好的class文件复制到服务器项目的目录中,或者自己制定一个目录。这个是无关的只要便于管理文件就好。

三、运行arthas进行更新

1、在arthas目录下,cmd 命令启动arthas-boot.jar文件

java -jar arthas-boot.jar

2、系统会列示已经运行的java程序清单,根据需要更新的应用,输入对应的序号回车。

 

3、输入命令 retransform D:/xxxxx/xxxServiceImpl.class 回车执行覆盖,系统会提示 retransform success, size: 1, classes

4、通过命令 retransform -l 可以显示已经更新的文件清单列表

 

标签:文件,java,jar,更新,arthas,class
来源: https://www.cnblogs.com/sdlz/p/16669431.html