Spring Boot提供了许多开发工具包,其中就包括实现热部署功能,我们在第一篇中构建的项目里添加的DevTools包就是用来干这个的。
如果构建项目时没有添加DevTools的话,那就需要手动导入这个包。
添加依赖
打开pom.xml文件,添加如下配置
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
</dependency>
<scope>runtime</scope>表示被依赖项目无需参与项目的编译,不过后期的测试和运行周期需要其参与。这里也可以写成
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<optional>true</optional>是runntime的optional,设置为true表示开启该配置
然后添加plugin插件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
配置属性fork为true,不过我的没有配置true也可以进行热部署,难道是2.x版本做的改动?(待解决)
配置Idea
如果用的是eclipse来开发的项目,那这步就可以忽略了
点击File——>Settings——>Compiler——>Build project automatically
然后按快捷键CTRL + SHIFT + A 输入Registry
点击出来的第一个选项
勾选第一个属性,即Idea的自动编译功能,默认是关闭的,热部署依赖于项目的自动编译功能。
配置完成过后,Idea就支持热部署了