本文主要記錄了一下在springboot項目中使用devtools熱部署的一個經驗。
在Idea中初始化項目之後,設置一下自動編譯,設置路徑: File-Settings-Build,Execution,Deployment-Compiler-Build project automatically 選項選中打勾:
按快捷鍵Ctrl+Shift+Alt+/,選擇1.Registry..
勾選 compiler.automake.allow.when.app.running
最後在application.yml中配置
#熱部署生效
spring:
devtools:
restart:
enabled: true
add-properties: false
就可以體驗devtools的熱部署魅力了
有時候在Idea中的springboot項目使用熱部署,修改之後,請求出現404,這個原因可能是
DevTools的檢測時間和idea的編譯所需時間存在差異。在idea還沒完成編譯工作前,DevTools就開始進行重啓和加載,導致@RequestMapping沒有被全部正常處理。
可以增大一下devtools的輪詢時間和靜止時間下:
spring.devtools.restart.poll-interval=3000ms
spring.devtools.restart.quiet-period=2999ms