使用 devtools 進行熱部署:
devtools 但是實現頁面熱部署(即頁面修改後會當即生效,無需重啓服務器,能夠直接在 application.properties 配置文件中配置 spring.thymeleaf.cache=fasle; 來實現)。
實現類文件熱部署(類文件修改後不會當即生效),實現對熟悉文件的熱部署。
即 devtools 會監聽 classpath 下的文件變更,而且會當即重啓應用(發生在保存時機),注意:應爲其採用的虛擬機機制,該項重啓的很快的。
1.base classloader(Base 類加載器):加載不改變的 Class,例如:第三方提供的 jar 包。
2.restart classloader(Restart 類加載器):加載正在發開的 Class。
爲何重啓很快,由於重啓的時候只加載了在開發的 Class,沒有 從新加載第三方的 jar 包。
pom 文件下引入 devtools 的 jar 包:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
optional 爲 true,由於依賴不會傳遞,該項目以來 devtools;以後以來該項目的項目若是想要試用 devtools,須要從新引入。
application.yml 配置文件中的配置: