主要原因: 如果应用使用 spring-boot-devtools ,则只要classpath下的文件有变动,它就会自动重启。这在使用IDE时非常有用,因为可以很快得到代码改变的反馈。默认情况下,classpath下任何指向文件夹的实体都会被监控,注意一些资源的修改比如静态assets,视图模板不需要重启应用。在项目工程中,如果你的日志是输出在classpath下,而且是RollingFile,那么你的idea肯定会不断重启,我的就是这种情况。
spring-boot-devtools为springboot热部署模块
主要作用:监控是否修改代码,直接进行编译,快速得到项目响应
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>true</scope> </dependency>
解决办法:
1.在项目pom.xml文件中将相应热部署模块删除,重新加载项目依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>true</scope>
</dependency>
2.在配置文件中更改devtools状态
将devtools工具状态更改为false
注意:如果每次修改后台代码需要重新启动项目,进行编译,仅修改前端代码无需重启项目,可以直接在浏览器端看到修改后的内容