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);
    }
                 
相關文章
相關標籤/搜索