Spring Boot入門系列二(SpringBoot經過配置devtools實現熱部署)

SpringBoot經過配置devtools實現熱部署

概要:

  基於Maven的SpringBoot項目,經過配置spring-boot-devtools模塊來使Spring Boot應用支持熱部署,無需每次更改代碼都要手動項目,提升開發者的開發效率java

步驟:

1、在項目的pom.xml文件添加以下兩段

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

  

<plugin>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-maven-plugin</artifactId>
    <configuration>
        <fork>true</fork>
        <addResources>true</addResources>
    </configuration>
</plugin
 
  
 

2、設置

一、將project automatically勾選上;File->Setting->Build,…->Compiler  將右側project automatically勾上:
  

二、Intellij IEDA 使用ctrl+shift+a 快捷鍵搜索Registry,選擇搜索出來的第一個,找到compiler.automake.allow.when.app.running,勾上開啓此功能便可spring

  
  

此時從新啓動項目便可實現熱部署,改動任意代碼會當即生效,不用再每次從新啓動項目。服務器

3、On Update action/On frame deactivation

On Update action : 顧名思義,當代碼改變的時候,須要IDEA爲你作什麼;app

On Frame deactivation : 當失去焦點(好比你最小化了IDEA窗口),須要IDEA爲你作什麼。jsp

 

On Update action 裏面有四個選項(通常選Update classes and resources)maven

    -Update resources :若是發現有更新,並且更新的是資源文件(*.jsp,*.xml等,不包括java文件),就會馬上生效spring-boot

    -Update classes and resources : 若是發現有更新,這個是同時包含java文件和資源文件的,就會馬上生效ui

        這裏須要注意一下:在運行模式下,修改java文件時不會馬上生效的;而debug模式下,修改java文件時能夠馬上生效的。固然,兩種運行模式下,修改resources資源文件都是能夠馬上生效的。.net

    -Redploy : 從新部署,只是把原來的war刪掉,不重啓服務器debug

    -Restart : 重啓服務器

On Frame deactivation:

     -Do nothing : 不作任何事 (通常推薦這個,由於失去焦點的概率太大)

     -Update resources : 失去焦點後,修改的resources文件都會馬上生效

    -Update classes and resources : 失去焦點後,修改的java ,resources文件都會馬上生效(與On update action中的Update classes and resources同樣,也是運行模式修改的java文件不會生效,debug模式修改的java文件會馬上生效)--------------------- 做者:乾源 來源:CSDN 原文:https://blog.csdn.net/u014553029/article/details/80971690 版權聲明:本文爲博主原創文章,轉載請附上博文連接!

相關文章
相關標籤/搜索