cosmo

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

boot-devtools官方文档:https://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html

1.在pom中引入热部署插件

 <dependency>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-devtools</artifactId>
     <optional>true</optional>
 </dependency>

2.在配置文件中配置:(也可以不设置)

# 热部署开关,false即不启用热部署
spring.devtools.restart.enabled: true
# 指定热部署的目录
#spring.devtools.restart.additional-paths: src/main/java
# 指定目录不更新
spring.devtools.restart.exclude:test

3..需要在 idea中配置    Settings -> Build,Excution ->,Deployment -> Compiler 看 Build project automatically (是否自动编译)是否勾选

  

 4.注册:Ctrl + Shift + Alt + / 选择 Registry 然后勾选

  

 最后看下控制台是否有日志打出 试下修改的代码有没有生效

注意事项:

  1、生产环境devtools将被禁用,如java -jar方式或者自定义的类加载器等都会识别为生产环境

  2、打包应用默认不会包含devtools,除非你禁用SpringBoot Maven插件的 excludeDevtools属性

  3、Thymeleaf无需配置 spring.thymeleaf.cache:false,devtools默认会自动设置,参考完整属性

    https://github.com/spring-projects/spring-boot/blob/v1.5.7.RELEASE/spring-boot-devtools/src/main/java/org/springframework/boot/devtools/env/DevToolsPropertyDefaultsPostProcessor.java

  4.devtools会在windows资源管理器占用java进程,在开发工具里面杀不掉,只能手动kill掉,不然重启会选成端口重复绑定报错

posted on 2021-01-04 15:00  【cosmo】  阅读(607)  评论(0编辑  收藏  举报