一、相关概述
- JVM能够识别的是字节码.class文件
- 每次重新运行都是一个重新编译的过程,也就是说会生成新的target字节码文件;但是每次修改了代码之后也必须要重新运行,这样比较麻烦。热部署就能较好地解决该问题,直接刷新页面就可以进行重新编译。
- 即:自动帮开发中重启Spring Boot项目,以达到修改代码之后能够“实时”的看到新效果的目的。
二、操作步骤
1. 添加热部署框架支持DevTools
在pom.xml中添加DevTools依赖:
在pom.xml中 -> 右键 -> Generate -> Edit Starters -> ok -> add DevTools -> reload
2. Settings 开启项⽬⾃动编译
需要同时配置settings(当前项目)和new projects settings(新项目)。
Settings -> Build,… -> Compiler -> 勾选Build project automatically (new projects settings同样设置)
3. 开启运行中热部署
不同版本配置是不同的。
1)低版本Idea配置(2021.2之前的版本)
在pom.xml下Ctrl+shift+alt+/
-> 选择registry -> 点击进入 -> 鼠标任意选中一条数据之后直接输入running -> 勾选compiler…app.running -> 一定点击close 【注意:千万不要点击Restore Defaults恢复默认!!】
2)⾼版本 Idea 设置(IntelliJ IDEA 2021.2 之后版本)
Settings -> Advanced settings -> Allow … 勾选
4. 启动项目使用debug,而非run运行
是会有一个延迟的,idea会自动进行重启。(耐心等待该延时)