添加maven依赖
IDEA配置修改
ctrl + shift + s (keymap: Main menu -> File -> Settings…)
Settings -> Build,Execution,Deployment -> Compiler -> 勾选 Build project automatically
ctrl + Alt + shift + / (keymap: Other -> Maintenance)
1. Registry... -> 勾选 compiler.automake.allow.when.app.running
这里大概说一下我对DevTools实现热部署的理解。DevTools会监听classpath下的文件变动,并且会在保存文件时立即重启应用。因为采用的是虚拟机机制,所以重启很快。其实类加载器有base classloader
和restart classloader
,前者加载不改变的class,例如第三方的jar包,后者主要加载正在开发的class。之所以重启很快,是因为重启的时候只是加载了在开发的class,没有重新加载第三方的jar包。