1.引入pom.xml()
<!-- 热部署(必须) --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <!-- 表示依赖不会传递 --> <optional>true</optional> </dependency> //下面的可以不要,上面可以实现热部署的话 <!-- 热部署(非必需) --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!-- fork 如果没有该项配置 devtools 不会起作用,即应用不会restart --> <fork>true</fork> <!-- 支持静态文件热部署 --> <addResources>true</addResources> </configuration> </plugin>
配置文件(非必需)
#热部署配置信息 #DEVTOOLS (DevToolsProperties)
#主要配置 #是否启用自动重启功能 spring.devtools.restart.enabled=true #重启服务的文件夹目录 spring.devtools.restart.additional-paths=src/main/java #不重启服务的文件夹配置 spring.devtools.restart.exclude=META-INF/maven/**,META-INF/resouces/**,resources/**, static/**,public/**,templates/**,**/*Test.class,**/*Tests.class,git.properties #非主要配置 #是否启用一个livereload.com兼容的服务器 spring.devtools.livereload.enabled=true #端口livereload.com服务器端口 spring.devtools.livereload.port=35729 #在原理来的基础上新增不重启服务的文件夹目录 #spring.devtools.restart.additional-exclude= #设置对路径变化进行监测的时间间隔(以毫秒为单位) spring.devtools.restart.poll-interval=1000 #在没有改变任何classpath的情况下,在重启被触发前的静默时长(以毫秒为单位) spring.devtools.restart.quiet-period=400 #设置触发条件,当需要实际触发重启检查时,则需要修改这个文件 #spring.devtools.restart.trigger-file=
2.修改idea设置(必须)
Intellij IEDA 使用ctrl+shift+a 快捷键搜索Registry,选择搜索出来的第一个
找到compiler.automake.allow.when.app.running,勾上开启此功能即可
此时重新启动项目即可实现热部署,改动任意代码会立即生效,不用再每次重新启动项目
两处设置不更改的话,Intellij IEDA可能无法生效
3.项目启动后输出日志(必须输出)
4. 按ctrl + F9 编译(必须)