一、概念

       热部署就是正在运行状态的应用,修改了他的源码之后,在不重新启动的情况下

       能够自动把增量内容编译并部署到服务器上,使得修改立即生效。热部署为了解

       决的问题有两个, 一是在开发的时候,修改代码后不需要重启应用就能看到效果,

        大大提升开发效率;二是生产上运行的程序,可以在不停止运行的情况下进行升级,

        不影响用户使用。

 

二、Idea开启热部署

      本篇文章主要是介绍Idea这款开发工具的热部署,而用Idea的人大多数都是用来开发java程序,

      当前流行的java程序主要有两种,第一种是传统的Web应用,依赖Tomcat这种web容器运行;

       第二种是Spring boot程序, 内嵌了运行环境。

 

 

2.1 Tomcat热部署(idea添加Tomcat看:https://www.cnblogs.com/weixinyu98/p/9822048.html)

       Idea配置热部署_spring

 

   Idea配置热部署_spring_02

 

      Idea配置热部署_spring_03

 

       Idea配置热部署_java文件_04

 

           Idea配置热部署_java文件_05

 

 

配置完后点击ok即可启动你的tomcat,然后改一下jsp、java文件实验热部署配置是否成功。

最后提示一下,Idea热部署并非绝对实时, 还是会有延时的,假如你手速快的话可能会出现改了并没有马上生效。所以此时不要怀疑热部署没有配置成功,稍微等一会你会看到开发工具左下角会有一个class reload的提示,出现这个提示才说明已经热部署完成了。

Idea配置热部署_spring_06

 

 Idea配置热部署_spring_07

 

 

 

2.2 Spring boot程序热部署(主要我想看的)

     a). 在顶部找到程序运行操作栏, 点击Edit Configurations,点击要配置的程序,按照下图标注地方配置

      静态资源热部署    Idea配置热部署_spring_08

 

  

配置完后点击ok即可启动你的程序,java文件实验热部署配置是否成功。

 

但配置到这里只是会使java文件和其他静态资源热部署成功,

但如果您的Spring boot程序是web程序,并且有jsp或Thymeleaf等页面模板引擎,

则还需要在Spring boot的配置文件中配置。

Idea配置热部署_ide_09

 

 

   

如果是Thymeleaf, 则在application.yml文件加入spring:thymeleaf:cache: false 配置

Spring boot程序除了通过上述步奏实现热部署,还可以通过给程序添加spring-boot-devtools依赖实现。

 Idea配置热部署_热部署_10

 

 三、其他配置

 3.1 开启Java Compiler的自动build

Idea配置热部署_ide_11

 

 3.2 按住ctrl + shift +alt + / 选择Registry,按照下图标注配置

   Idea配置热部署_ide_12