idea springboot遠程debug的操作方法
Remote Debug 綜述
當我們的后臺項目部署到服務器上時,由于環境和本地不同,有時候也會有一些奇奇怪怪的問題出現。只依賴服務器上的日志來診斷可能太不靈活,這時就需要我們進行遠程調試。在開始我們的步驟前,先確認一點:我們現在是希望能夠在本地遠程調試服務器上的程序,也就是說:
本地 = 調試者 服務器 = 被調試者而且還有一點我們需要注意,就是在調試遠程服務器上的代碼時,一定要保證 遠程服務器 上的代碼和 本地 代碼一致,不然就失去debug效果了。
First Step 本地配置遠程服務 在本地,打開我們的idea,在運行窗口上點擊 Edit Configurations…
會看到新跳出來一個窗口,點擊左上角 ‘+’ 號,選擇 Remote
填入相關信息
這樣就算是做好了我們本地的遠程debug配置。這里補充一個小tip:
這里設置的8002端口是監聽端口,讀者也可以修改為自己想要的端口。但是要注意,監聽端口和啟動端口必須不同。也就是服務器上項目啟動的端口,要和你現在設置的這個監聽端口不一樣。
先別急著把這個界面關掉,我們把這一段內容復制下來:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8002
Second Step 服務器以遠程監聽方式啟動
打開我們的Xshell(或其他SSH工具)連接上我們的遠程服務器。啟動時,我們將過去的java -jar xxx.jar命令給替換成:
java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8002 xxx.jar
但如果我們的遠程服務器是阿里云、騰訊云等云服務商的云服務器,我們可能需要像下面這樣改:指定我們開放的ip,確保不會被默認設置為127.0.0.1:8002導致外部無法訪問進來。
java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0.0.0.0:8002 xxx.jar
回車啟動,會看到下面的字樣,就說明成功監聽了:
Listening for transport dt_socket at address: 8002
Third Step 在本地調試
點擊debug
可以看到控制臺中顯示出了以下字樣,說明連接成功。
Connected to the target VM, address: ’{ip}:8002’, transport: ’socket’
然后就可以像調試本地程序一樣打斷點調試了~
到此這篇關于idea springboot遠程debug的操作方法的文章就介紹到這了,更多相關idea springboot遠程debug內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: