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