第一步:导入依赖
导入时可以放在maven父工程,也可以放在当前maven工程里。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
一旦被引用后启动类上会显示devtools的标识
![](https://img.haomeiwen.com/i4192379/d71799bcb4e1d19e.png)
接着需要配置maven工程pom中的plugin
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork><!-- 如果没有该配置,热部署的devtools不生效 -->
</configuration>
</plugin>
</plugins>
</build>
第二步:idea的配置
勾选自动构建这一项File -> Settings -> Compiler,勾选 Build Project automatically
![](https://img.haomeiwen.com/i4192379/decdd0d52b3d5eac.png)
此时还不能生效,也就是修改类文件不会自动编译,所以继续配置idea ,按快捷键Ctrl+Shift+Alt+/,选择Registry...
![](https://img.haomeiwen.com/i4192379/cac89db1cbd5b3e8.png)
然后,勾选 compiler.automake.allow.when.app.running 即可
![](https://img.haomeiwen.com/i4192379/7b0667838836d320.png)
哦,修正一下,修改过的在最上面显示
![](https://img.haomeiwen.com/i4192379/232da474f8b7823d.png)
第三步:启动项目测试
定义一个api方法
![](https://img.haomeiwen.com/i4192379/01b7fd42c4d1b0c6.png)
发起请求后当前输出
![](https://img.haomeiwen.com/i4192379/06b50572b95791b2.png)
修改该类文件
![](https://img.haomeiwen.com/i4192379/0e47a58ae8cbfcff.png)
修改完此时idea控制台不会有任何反应,先清空控制台,然后ctrl+s操作一下,大概等5秒后,控制台输出了内容,看起来像idea帮我们自动重启了一遍项目
![](https://img.haomeiwen.com/i4192379/ca359418833430a4.png)
好的我们再调用该接口,就输出我们修改后的内容了
![](https://img.haomeiwen.com/i4192379/d2973aa0b56b73f0.png)
总结:每次修改都需要ctrl+s才能大概在5秒后触发自动编译,如果没有ctrl+s则不会触发,这个还是蛮合理的如果一直触发编译也消耗资源,这样需要时触发更灵活,这个触发时间应该是可以设置的具体自行百度,这里就不赘述了。
网友评论