解讀Spring-boot的debug調(diào)試
由于之前一直在使用spring-boot開發(fā),但一直苦惱于不知道如何利用debug調(diào)試代碼.在網(wǎng)上查找了很多文章之后。學(xué)習(xí)之余決定把spring-boot項(xiàng)目分別在eclipse和idea的調(diào)試過程簡(jiǎn)單做一下整理,方便大家以后能根據(jù)自己的需求來學(xué)習(xí),不足之處還望指正。其調(diào)試原理主要還是利用jvm的遠(yuǎn)程調(diào)試。
- pom.xml關(guān)于jvm啟動(dòng)參數(shù)的配置
- 啟動(dòng)spring-boot項(xiàng)目
- 利用debug工具連接調(diào)試
- 設(shè)置斷點(diǎn),調(diào)用api接口
一、pom.xml關(guān)于jvm啟動(dòng)參數(shù)的配置
jvm參數(shù)配置如下所示:

簡(jiǎn)單介紹下以上參數(shù)的含義:
-Xdebug是通知JVM工作在DEBUG模式下-Xrunjdwp是通知JVM使用(java debug wire protocol)來運(yùn)行調(diào)試環(huán)境。該參數(shù)同時(shí)了一系列的調(diào)試選項(xiàng)transport指定了調(diào)試數(shù)據(jù)的傳送方式,dt_socket是指用SOCKET模式server參數(shù)是指是否支持在server模式的VM中suspend指明,是否在調(diào)試客戶端建立起來后,再執(zhí)行VM,如果為y,那么當(dāng)前的VM就是suspend直到有debug client連接進(jìn)來才開始執(zhí)行程序。如果你的程序不是服務(wù)器監(jiān)聽模式并且很快就執(zhí)行完畢的,那么可以選擇在y來阻塞它的啟動(dòng)。address=5005調(diào)試服務(wù)器的端口號(hào),客戶端用來連接服務(wù)器的端口號(hào)。
二、啟動(dòng)spring-boot項(xiàng)目
在eclipse和idea下分別啟動(dòng)項(xiàng)目。因需要不同公共環(huán)境的配置,故選擇maven的啟動(dòng)命令:clean install -Ptest -X spring-boot:run(-Ptest表示測(cè)試環(huán)境下啟動(dòng),-X表示強(qiáng)制執(zhí)行),不依賴于任何公共配置的spring boot項(xiàng)目可獨(dú)立執(zhí)行(即啟動(dòng)按鈕)。大家可根據(jù)自己的實(shí)際情況選擇。
1.eclipse的spring -boot項(xiàng)目啟動(dòng)成功的截圖如下,圈紅線處表示啟動(dòng)成功:

2.idea的spring -boot項(xiàng)目啟動(dòng)成功的截圖如下,圈紅線處表示啟動(dòng)成功:

三、利用debug工具連接調(diào)試
1.關(guān)于eclipse的debug連接調(diào)試,可右擊項(xiàng)目–>選擇debug as–>Debug Configuration…–>Remote Java Application–>右擊new即可。
a.remote java application:

b.配置host以及port,因項(xiàng)目在本地啟動(dòng),故使用localhost,port用之前配置的address的值,即5005端口。接著點(diǎn)擊debug連接調(diào)試

c.debug啟動(dòng)連接調(diào)試成功如圖所示,初始配置之后,下次可選擇點(diǎn)擊小蟲子連接調(diào)試

2.關(guān)于idea的debug連接調(diào)試,可選擇idea右上角的edit Configuration..(啟動(dòng)按鈕旁)–>選擇左上角的+–>選擇Remote點(diǎn)擊新增即可。
a.remote頁(yè)面出現(xiàn)之后,同樣因?yàn)閟pring-boot項(xiàng)目也是在本地啟動(dòng),故使用localhost,port用之前配置的address的值,即5005端口。name名稱可隨意取(不作限定),接著點(diǎn)擊ok:

b.debug啟動(dòng)連接調(diào)試成功如圖所示,選擇右邊的debug啟動(dòng),如圖所示
①點(diǎn)擊按鈕:

②remote啟動(dòng)連接成功:

四、設(shè)置斷點(diǎn),調(diào)用api接口
1.eclipse下編寫測(cè)試類調(diào)用api接口,同時(shí)設(shè)置斷點(diǎn),debug調(diào)試成功(另說明,調(diào)用接口調(diào)試方法自定,不一定非要編寫測(cè)試類調(diào)用)
a.編寫測(cè)試類調(diào)用api接口

b.調(diào)試成功

2.idea下編寫測(cè)試類調(diào)用api接口,同時(shí)設(shè)置斷點(diǎn),debug調(diào)試成功(另說明,調(diào)用接口調(diào)試方法自定,不一定非要編寫測(cè)試類調(diào)用)
a.編寫測(cè)試類調(diào)用api接口

b.調(diào)試成功

在此,關(guān)于spring-boot基于jvm分別在eclipse和idea的debug調(diào)試介紹就完成了。不足之處,還望指正。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
springboot+nacos+gateway實(shí)現(xiàn)灰度發(fā)布的實(shí)例詳解
灰度發(fā)布是一種在軟件部署過程中用于平滑過渡的技術(shù),通過引入灰度發(fā)布SDK和配置網(wǎng)關(guān)策略實(shí)現(xiàn),本文就來介紹一下,感興趣的可以了解一下2022-03-03
基于Java和GeoTools的Shapefile矢量數(shù)據(jù)縮略圖生成實(shí)踐
這篇文章主要介紹了基于Java和GeoTools的Shapefile矢量數(shù)據(jù)縮略圖生成實(shí)踐,需要的朋友可以參考下2024-08-08
java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式
這篇文章主要介紹了java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-12-12
解決idea每次新建項(xiàng)目都需要重新指定maven目錄
這篇文章主要介紹了解決idea每次新建項(xiàng)目都需要配置maven,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
eclipse實(shí)現(xiàn)Schnorr數(shù)字簽名
這篇文章主要為大家詳細(xì)介紹了eclipse實(shí)現(xiàn)Schnorr數(shù)字簽名,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06
java實(shí)現(xiàn)簡(jiǎn)單QQ登錄界面
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)單QQ登錄界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
Lombok插件有望被Intellij IDEA收編以改善兼容性問題(推薦)
這篇文章主要介紹了Lombok插件有望被Intellij IDEA收編以改善兼容性問題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08
使用spring.profiles.active來分區(qū)配置的方法示例
這篇文章主要介紹了使用spring.profiles.active來分區(qū)配置的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-01-01
淺談SpringCloud?Alibaba和SpringCloud的區(qū)別
這篇文章主要介紹了淺談SpringCloud?Alibaba和SpringCloud的區(qū)別,Spring?Cloud?Netflix框架也屬于Spring?Cloud,但是Netflix并不是由spring來進(jìn)行開發(fā)的,需要的朋友可以參考下2023-05-05
SpringBoot thymeleaf eclipse熱部署方案操作步驟
今天小編就為大家分享一篇關(guān)于SpringBoot thymeleaf eclipse熱部署方案操作步驟,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03

