1. 安装DCEVM

DCEVM主页: https://dcevm.github.io/


写此文时,支持的JDK 1.8的版本是:Java 8 update 112, build 9 

因为这个版本已经不是最新版jdk,所以需要去Oracle Java Archive这个页面下载,你需要有oracle的账号。


下载完后安装好。


然后下载DCEVM的patch,是个jar包,从DCEVM主页上下载,我下文件名为:DCEVM-light-8u112-installer.jar


运行java -version确认您的jdk是8u112.


安装patch

$ sudo java -jar DCEVM-light-8u112-installer.jar

DCEVM+HotSwapAgent实现java类热加载_第1张图片

选择安装目录 

这个目录就是Java 8 update 112的安装目录,在Mac下,请运行/usr/libexec/java_home这个命令找到java_home.然后点击Add installation directory...这个按钮,选择java home下的jre目录。

点击Install DCEVM as altjvm这个按钮安装。


2. IntelliJ IDEA 配置

打IDEA的配置,选择左侧的plugin,搜索HotSwapAgent,然后安装它。

DCEVM+HotSwapAgent实现java类热加载_第2张图片

重启IDEA后,此plugin就生效了。


如果你的系统上安装了多个JDK,请确认你的项目用的是Java 8 update 112


下面配置HotSwapAgent plugin.

DCEVM+HotSwapAgent实现java类热加载_第3张图片

这样就行了。


打开你的项目,以debug的方式运行它(一定要是debug模式)。


IDEA有个问题,就是在debug模式下不是自动编译的。所以每次修改完代码,要按’cmd + shift + F9’来编译,然后class才能reload,这个挺烦人的,你会发现reload的速度并不是很快,不过总比每次点stop & run要快了不少。