Spring Boot 2.0實現熱部署模式


 

前言:

  在做Spring Boot 項目調試時總是會來回修改代碼,重啟項目,為了方便項目修改后,立即能看到效果。

 

一、實現的方式概述

    1、使用 spring-boot-devtools

    2、使用 Spring Loaded

二、Eclipse或Spring Tool Suite的實現方式

    1、pom.xml文件增加

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

    2、工程配置

        Project -> Build Automatically 選中

 

三、IEDA的實現方式

    1、pom.xml文件增加 spring-boot-devtools

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

   2、pom.xml增加 springloaded

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <dependencies>
                <dependency>
                    <groupId>org.springframework</groupId>
                    <artifactId>springloaded</artifactId>
                    <version>1.2.5.RELEASE</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
</build>

  3、修改配置

    打開idea ,File->Settings-> Build-Execution-Deployment -> Compiler,勾選 Build Project Automatically. 

    

  4、按 Shift+Ctrl+A (windows,mac是 command+shift+A) 

    將看到彈窗 Enter Action or option name,輸入"registry",雙擊第一項"Registry..." ,會彈出另一個窗口,尋找 < compiler.automake.allow.when.app.running> 選中,參考如圖:

    

   5、重啟IDE (與Eclipse不一樣,IDEA需要重啟下)

四、測試方法

    一、Eclipse測試

      1、運行項目

      2、修改類-->保存:應用會重啟

      3、修改配置文件-->保存:應用會重啟

      4、修改頁面-->保存:應用會重啟,頁面會刷新(原理是將spring.thymeleaf.cache設為false)

    二、 IDEA測試

      1、運行項目

      2、修改controller中代碼,會發現顯示結果跟着變化。

      3、修改html頁面 后再刷新頁面,會發現顯示結果跟着變化。

五、熱部署的注意事項

   1、如果使用模板引擎,關閉緩存

      在application.properties中添加

      #禁止thymeleaf緩存(建議:開發環境設置為false,生成環境設置為true)

      spring.thymeleaf.cache=false

    2、開啟熱部署后,session每次都會重置的

 

實現的方式概述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM