1、在pom.xml文件中添加依赖
<!-- 开启热部署 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>
2、在application.properties配置文件中添加热部署配置
# 热部署 # 不重启项目 spring.devtools.restart.enabled=false # 开启热加载 spring.devtools.livereload.enabled=true
或则 在application.yml配置文件中添加热部署配置
spring: application: name: springbootweb profiles: active: dev #热部署 devtools: #不重启项目 restart: enabled: false #开启热加载 livereload: enabled: true server: port: 8080
3、修改idea运行配置,如下图所示
点击Apply + OK后生效,修改代码后点击Ctrl+Alt+F10保存修改,服务不会重启,但是修改已经生效。
修改生效快捷键:
集成注意:
1、如果发现没有热部署效果,则需要检查IDE配置中有没有打开自动编译。
“File” -> “Settings” -> “Build,Execution,Deplyment” -> “Compiler”,选中打勾 “Build project automatically” 。
组合键:“Shift+Ctrl+Alt+/” ,选择 “Registry” ,选中打勾 “compiler.automake.allow.when.app.running” 。
2、如果使用Thymeleaf模板引擎,需要把模板默认缓存设置为false
#禁止thymeleaf缓存(建议:开发环境设置为false,生成环境设置为true) spring.thymeleaf.cache=false
3、针对devtools的可以指定目录或者排除目录来进行热部署
#添加那个目录的文件需要restart spring.devtools.restart.additional-paths=src/main/java #排除那个目录的文件不需要restart spring.devtools.restart.exclude=static/**,public/**