java - idea能不能像STS那樣直接通過保存快速重啟Spring Boot項目
問題描述
在Spring Boot項目添加了devtools的前提下,STS只需要簡單的保存文件就可以觸發重啟,非常方便簡單。但是Intellij IDEA還需要Ctrl+F9構建項目才行,而且如果使用Gradle的話會調用gradle的build任務,速度更慢,調試體驗很受影響。請問有什么插件之類的可以讓idea像STS那樣保存文件就可以快速觸發Spring Boot的重啟嗎?
另外其實如果Gradle守護進程活著的話Gradle構建也并不算慢。但是不知道是不是我內存捉急的原因,gradle守護經常這次構建,創建了守護進程,然后過幾分鐘守護進程就死了。之后下次構建項目還得重新啟動守護進程,無形中浪費了幾十秒時間。有沒有啥辦法能讓Gradle deamon活得久一點?
問題解答
回答1:Gradle 沒研究, 我說一下用 maven 怎么操作吧,題主舉一反三
第一步引入 spring devtools
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional></dependency>第二步
開啟自動編譯
在 idea 界面按 ctrl + shift + a,搜索 registry
開啟 compiler.automake.allow.when.app.running
第五步重新享受 debug 的快感吧你甚至可以給 chrome 安裝一個插件修改頁面時瀏覽器自動刷新頁面
回答2:@FullStackDeveloper 的方法只能做簡單的hot swap。如果想真正進行熱部署,可以使用JRebel。
在Intellij中安裝JRebel插件
到MyJRebel中獲取注冊碼(這個注冊碼是免費提供給開源社區的)
填寫注冊碼,然后使用JRebel啟動你的應用。每次改了代碼,只要重新build就可以了。
]
相關文章:
1. node.js - nodejs,express搭建,為什么ejs模板被解析成pre了?2. javascript - postcss-loader在webpack2的使用.3. angular.js - js 點擊事件onclick=“”,引號內的函數名字 可以為 變量嗎4. css3 實現一個線性漸變出現的問題?5. angular.js - Angular中關于控制器編寫方式的問題6. android - 如何使用view group的bitmap做一個倒影效果,同時忽略scale的view7. linux - 無法使用ifconfig來配置ip信息8. mysql - 關聯數據表的更新問題9. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?10. mysql - mybatis 查詢 統計某個列數量 ,根據一個列,分組查詢,在xml文件如何接收
