先说折磨了我一天的死活不生效的原因,
热部署必须是在debug模式下才能生效,我也是醉了,
【java热加载 热部署】这篇文章里有解释原因和一些教程,可供参考
配置
spring-boot-devtools 实现热部署
pom中引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
添加完依赖后,改下代码,再点下右上角绿色的锤子构建,或者按快捷键
@RestController
public class Test {
@GetMapping("/test")
public String test() {
return "3333433";
}
}
写个接口实验下效果,debug模式启动项目后,再改下返回值,再刷新刚才的页面,输出的内容已经变了,这样实现热部署了
但是每次都要手动点下构建比较麻烦,网上很多说设置下面这两个地方就可以自动构建的,我试了还是不行,不知道什么原因。
找到另一种可以自动构建的方法是
如图在modify options找到 on update action 和 on frame deactivation 并设置为Update classes and resources,再以debug模式重启,
这样改完代码后,鼠标点到idea之外的地方,就可以自动构建了。
(小声哔哔:java真是折磨人的东西)