SpringBoot項目實現熱部署的配置方法


最近公司在開發項目時用到了熱部署,在這里做如下記錄:

一、什么是熱部署?

熱部署,就是在應用正在運行的時候升級軟件,卻不需要重新啟動應用。

二、什么是SpringBoot熱部署?

SpringBoot熱部署就是在項目正在運行的時候修改代碼, 卻不需要重新啟動項目。

有了SpringBoot熱部署后大大提高了開發效率,因為頻繁的重啟項目,勢必會浪費很多時間, 有了熱部署后,媽媽再也不用擔心我修改代碼重啟項目了~~~

三、SpringBoot熱部署的流程

1.pom文件中導入 spring-boot-devtools 依賴:

<!--SpringBoot熱部署配置 -->
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency>

2.繼續在pom.xml中添加插件:

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

3.設置application.properties

#配置項目熱部署
spring.devtools.restart.enabled=true

4.在idea中設置自動編譯:

首先ctrl+alt+s打開設置(Other Settings 的設置是對整個工作空間項目都啟作用,而Settings…的設置是對整個項目啟作用),搜索Compliler,勾選Build project automatically,如下圖所示:

5.按住ctrl + shift + alt + /,出現如下圖所示界面,點擊Registry...,如下圖:

  點擊進入后,勾選compiler.automake.allow.when.app.running后關閉即可

通過以上步驟,就完成了SpringBoot項目的熱部署功能!!!

6.對熱部署測試是否成功:

package com.devtoolsDemo.devtoolsDemo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/hello")
public class HelloDemo {

    @RequestMapping("/index")
    public String index() {
        return "helloworld!";
    }
    
}

啟動項目,通過瀏覽器輸入地址:http://localhost:8080/hello/index

結果如下:

新加請求,在不重新啟動項目的情況下測試熱部署是否配置成功~~~

package com.devtoolsDemo.devtoolsDemo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("/hello")
public class HelloDemo {

    @RequestMapping("/index")
    public String index() {
        return "helloworld!";
    }

    @RequestMapping("/say")
    public String say(){
        return "I love Java!";
    }

}

測試新加請求是否成功,瀏覽器輸入http://localhost:8080/hello/say后結果如下:

說明我們的熱部署配置生效啦~~~

 


免責聲明!

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



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