SpringBoot工程 一修改文件就自动重启问题分析及解决

     最近发现Eclipse修改java文件一保存,SpringBoot工程就会自动重启,这种重启的缘由就是启用了springboot的自动重启功能,或称之为热部署。
起这个功能就是开发者工具——spring-boot-devtools模块。java

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

      
       若是应用使用spring-boot-devtools,则只要classpath下的文件有变更,它就会自动重启。这在使用IDE时很是有用,由于能够很快获得代码改变的反馈。默认状况下,classpath下任何指向文件夹的实体都会被监控,注意一些资源的修改好比静态assets,视图模板不须要重启应用。在项目工程中,若是你的日志是输出在classpath下,并且是RollingFile,那么你的idea可能也会不断重启
               
    解决方法:把这个热部署的功能给禁用了就能够了
   禁用有两种办法: spring

  •   在application.properties文件中设置: spring.devtools.restart.enabled=false
  •   在调用SpringApplication.run(…)以前设置一个系统属性,以下:
    public static void main(String[] args) {
            System.setProperty("spring.devtools.restart.enabled", "false");
            SpringApplication.run(MyApp.class, args);
    }
                 
相关文章
相关标签/搜索