一、概念
热部署就是正在运行状态的应用,修改源码后,在不重新启动的情况下能够自动把增量内容编译并部署到服务器上,使得修改立即生效。热部署解决的问题有两个, 一是在开发的时候,修改代码后不需要重启应用就能看到效果,提升开发效率;二是生产上运行的程序,可以在不停止运行的情况下进行升级,不影响用户使用。
用 Idea 的人大多数都是用来开发 Java 程序,当前流行的 Java 程序主要有两种,第一种是传统的 Web 应用,依赖 Tomcat 这种 Web 容器运行;第二种是 SpringBoot 程序, 内嵌了运行环境。我只记录配置 SpringBoot 热部署的方法。
二、方法
开启自动编译:
- Ctrl+Alt+S 打开配置
- 设置自动编译
File-Settings-Compiler-Build Project automatically
- Ctrl+Shift+Alt+/ 选择 Registry
- 找到选项 Compiler autoMake allow when app running 打勾
设置项目启动加载方式:
- 菜单栏选择 Run->Edit Configurations…
找到 SpringBoot下的 On Update action 和 On frame deactivation ,选择 Update classes and resources。
三、测试
修改代码,查看 Idea 最下方的提示条,出现 build 后 紧接着出现 parsing java… 表示正在重新编译,值得注意的是热部署也是要一定时间的,更新会有一个短暂的延迟。