IntelliJ Idea启动Spring Boot工程不断重启

时间:2024-05-19 15:27:35

最近在开发一个Spring Boot项目的过程中,碰到一个非常奇怪的问题:

    项目已启动完毕立马就开始重启

IntelliJ Idea启动Spring Boot工程不断重启

   看上图可以发现,项目在启动后,立马被关闭然后再次重启,然后一直循环。

搞了老半天也没搞明白是哪里出问题,但是自己记得前一天项目都没有发生过这样的情况,于是怀疑自己是不是配置错了什么东西,甚至有想法把IDEA删掉重装,但是原则阻止了我这么做,因为就算重装IDEA解决了问题,那又能怎样,如果下次再次遇到这个问题怎么办,好吧,扯远了。下面说一下我是如何找到问题所在的:

     首先发现自己没办法处理找到这个问题了,于是去百度上看看有没有相同经历的伙伴,查了老半天找到一篇博文,给我很大启发《Spring Boot ——IntelliJ Idea本地运行工程不断重启》,文中有提到一种可能情况,就是系统日志输出到了classpath中,由于IDAE配置了热部署功能,在classpath中如果有文件发生变化,IDEA会重启项目。

这时我暂时性的把热部署关闭了,在Spring配置文件中配置了spring.devtools.restart.enabled=false,然后启动项目发现不会在一直重启了,这时候我意识到问题肯定是上面说到的那种,于是,查看了一下classpath下的文件列表,发现问题所在了,因为项目启动后有一个验证功能,然后验证完毕之后会在一个文件中记录一些东西,而这个文件刚好又在classpath下,这样就导致了每次项目启动后更改了一个classpath下的文件,然后IDAE监听到classpath下的文件被更改了,重新启动项目......就这样陷入了一个死循环......