Springboot在IDEA熱部署的配置方法
1 pom.xml文件
注:熱部署功能spring-boot-1.3開始有的
<!--添加依賴--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <!-- optional=true,依賴不會傳遞,該項目依賴devtools;之后依賴myboot項目的項目如果想要使用devtools,需要重新引入 --> <optional>true</optional> </dependency>
注:project 中添加 spring-boot-maven-plugin,主要在eclipse中使用,idea中不需要添加此配置。
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <fork>true</fork> </configuration> </plugin> </plugins> </build>
2 更改idea配置
1) “File” -> “Settings” -> “Build,Execution,Deplyment” -> “Compiler”,選中打勾 “Build project automatically” 。
2) 組合鍵:“Shift+Ctrl+Alt+/” ,選擇 “Registry” ,選中打勾 “compiler.automake.allow.when.app.running” 。
3 Chrome禁用緩存
F12或者“Ctrl+Shift+I”,打開開發(fā)者工具,“Network” 選項卡下 選中打勾 “Disable Cache(while DevTools is open)”
補充:
Intellij IDEA 4種配置熱部署的方法
熱部署可以使的修改代碼后,無須重啟服務(wù)器,就可以加載更改的代碼。
第1種:修改服務(wù)器配置,使得IDEA窗口失去焦點時,更新類和資源
菜單Run -> EditConfiguration , 然后配置指定服務(wù)器下,右側(cè)server標(biāo)簽下on frame deactivation = Update classes and resource。
優(yōu)點:簡單
缺點:基于JVM提供的熱加載僅支持方法塊內(nèi)代碼修改,只有debug模式下,并且是在idea失去焦點時才會出發(fā)熱加載,相對加載速度緩慢
第2種:使用springloaded jar包
a. 下載jar包,github:https://github.com/spring-projects/spring-loaded
b. 啟動應(yīng)用時添加VM啟動參數(shù):-javaagent:/home/lkqm/.m2/repository/org/springframework/springloaded/1.2.7.RELEASE/springloaded-1.2.7.RELEASE.jar -noverify
優(yōu)點:對Spring系列框架支持好(不含Spring boot), 支持 成員級別的修改(增刪改方法、字段、注解),支持對枚舉值集。
缺點:與優(yōu)點相對
第3種:使用spring-boot-devtools提供的開發(fā)者工具
spring-boot項目中引入如下依賴
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency>
優(yōu)點:簡單,支持Spring-boot項目,支持成員級別的修改熱部署。
缺點:只支持spring-boot項目。
第4種:使用Jrebel插件實現(xiàn)熱部署(該插件14天免費試用)
在線安裝:菜單File -> Setting -> Plugin, 點擊右側(cè)底部 Browse repositories, 彈出框頂部輸入:JReble for Intellij, 選中安裝即可。
優(yōu)點:強大,對各類框架支持,并且提供IDE插件的方式。
最后3種方法是基于類加載機制來實現(xiàn)熱加載的,因此你修改完成代碼后必須重新編譯當(dāng)前代碼,才能觸發(fā)熱部署,Eclipse默認就支持了自動編譯,而在Intellij IDEA中默認是關(guān)閉了自動編譯的,可以按照如下2步設(shè)置開啟:
- IDEA開啟項目自動編譯,進入設(shè)置,Build,Execut, Deployment -> Compiler 勾選中左側(cè)的Build Project automatically
- IDEA開啟項目運行時自動make, ctrl + shift + a搜索命令:registry -> 勾選compiler.automake.allow.when.app.running
總結(jié)
以上所述是小編給大家介紹的Springboot在IDEA熱部署的配置方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
java關(guān)于String.split("|")的使用方式
這篇文章主要介紹了java關(guān)于String.split("|")的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-02-02spring-spring容器中bean知識點總結(jié)
在本篇文章里小編給大家分享了關(guān)于spring-spring容器中bean知識點總結(jié),有需要的朋友們可以學(xué)習(xí)下。2019-08-08Java 基于UDP協(xié)議實現(xiàn)消息發(fā)送
這篇文章主要介紹了Java 基于UDP協(xié)議實現(xiàn)消息發(fā)送,幫助大家更好的理解和學(xué)習(xí)Java網(wǎng)絡(luò)編程,感興趣的朋友可以了解下2020-11-11Java實現(xiàn)級聯(lián)下拉結(jié)構(gòu)的示例代碼
在開發(fā)過程中,會遇到很多的實體需要將查出的數(shù)據(jù)處理為下拉或者級聯(lián)下拉的結(jié)構(gòu),提供給前端進行展示。本文為大家介紹了java封裝下拉和級聯(lián)下拉的通用工具類,需要的可以參考一下2022-06-06springboot整合Dubbo與Feign的實現(xiàn)?(無注冊中心)
本文主要介紹了springboot整合Dubbo與Feign的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04Springboot-Starter造輪子之自動鎖組件lock-starter實現(xiàn)
這篇文章主要為大家介紹了Springboot-Starter造輪子之自動鎖組件lock-starter實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-05-05