devtools模塊,是爲開發者服務的一個模塊。主要的功能就是代碼修改後通常在5秒以內就會自動從新加載至服務器,至關於restart成功。與JRebel不一樣的是,JRebel是一款商業插件,devtools是免費的。html
devtools:是boot的一個熱部署工具,當咱們修改了classpath下的文件(包括類文件、屬性文件、頁面等)時,會從新啓動應用(因爲其採用的雙類加載器機制,這個啓動會很是快,若是發現這個啓動比較慢,能夠選擇使用jrebel) 雙類加載器機制:boot使用了兩個類加載器來實現重啓(restart)機制:base類加載器(簡稱bc)+restart類加載器(簡稱rc)。 bc:用於加載不會改變的jar(eg.第三方依賴的jar) rc:用於加載咱們正在開發的jar(eg.整個項目裏咱們本身編寫的類)。當應用重啓後,原先的rc被丟掉、從新new一個rc來加載這些修改過的東西,而bc卻不須要動一下。這就是devtools重啓速度快的緣由。java
在使用IDEA作SpringBoot的web項目的時候,在每一次修改了java文件或者是resource的時候,都必須去重啓一下項目,這樣的話浪費了不少的時間,那麼,這個時候,就須要去實現程序的熱部署,可以在修改了頁面的時候可以立馬刷新顯現出新的效果。git
1.1 在設置中勾中Build project automatically
github
1.2 使用快捷鍵Ctrl + shift + alt + /,打開Maintenance操做面板,選擇Registry,打開Registry操做面板web
1.3 找到並勾線"compiler.aut0make.allow.when.app.running",點擊Close關閉操做面板。spring
1.4 啓動應用,查看日誌。springboot
1.5 更新某個類文件進行驗證。服務器
如上圖,spring-boot-devtools將會自動重啓,留意觀察控制檯的日誌。app
2.1 在谷歌商店添加LiveReload插件spring-boot
2.2 啓動項目查看效果
2.3 更新以後效果
2.4 其餘方式
關於熱加載的方式,啓動之後若是html有更新,直接F5刷新也是好使的。
https://github.com/toutouge/javademosecond/tree/master/hellospringboot
做 者:請叫我頭頭哥
出 處:http://www.cnblogs.com/toutou/
關於做者:專一於基礎平臺的項目開發。若有問題或建議,請多多賜教!
版權聲明:本文版權歸做者和博客園共有,歡迎轉載,但未經做者贊成必須保留此段聲明,且在文章頁面明顯位置給出原文連接。
特此聲明:全部評論和私信都會在第一時間回覆。也歡迎園子的大大們指正錯誤,共同進步。或者直接私信我
聲援博主:若是您以爲文章對您有幫助,能夠點擊文章右下角【推薦】一下。您的鼓勵是做者堅持原創和持續寫做的最大動力!