在项目开发过程中,经常会修改代码,为了查看自己修改后的结果往往需要重新启动应用,而这一过程是非常浪费时间的。
开发热部署可以再改变程序代码的时候,自动实现项目的重新启动和部署,大大提高了开发调试的效率。
在spring boot 中实现热部署的步骤如下:
一、修改pom.xml文件
添加 spring-boot-devtools 的依赖配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
<scope>true</scope>
</dependency>
还必须要加入spring-boot-maven-plugin
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--如果没有该项配置,devtools不会起作用,即应用不会restart-->
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
二、在配置文件application.yml中添加配置
spring:
devtools:
restart:
enabled: true #开启热部署
freemarker:
cache: false #页面不加载缓存,修改即时生效
三、idea的设置
点击左上角File—>Settings—>Build,Execution,Deployment—>Compiler—>Build Project automatically
保存设置,关闭窗口,然后按 ctrl + shift + alt + / 选择Registry,选中 Compiler.autoMake.allow.when.app.running,选中后也可以看到下面的描述就是自动的去重启项目(选中后直接点击close即可)
如果不确定是否选中成功,再次按 ctrl + shift + alt + / 选择Registry,此时可以看到这一项变成了蓝色,即生效
四、测试热部署
我先启动项目,然后在随便一个controller的方法中添加了一行System.out.println()输出语句,清空控制台信息,过了一会控制台打印出如下信息:
可以看到热部署成功,项目成功的重新启动!