IDEA實(shí)現(xiàn)遠(yuǎn)程調(diào)試步驟詳解
IDEA不僅可以本地調(diào)試代碼,也可以遠(yuǎn)程調(diào)試代碼。
一、基本原理
本機(jī)和遠(yuǎn)程主機(jī)的兩個(gè) VM 之間使用 Debug 協(xié)議通過 Socket 通信,傳遞調(diào)試指令和調(diào)試信息。 被調(diào)試程序的遠(yuǎn)程虛擬機(jī):作為 Debug 服務(wù)端,監(jiān)聽 Debug 調(diào)試指令。jdwp是Java Debug Wire Protocol的縮寫。 調(diào)試程序的本地虛擬機(jī):IDEA 中配置的 Remote Server,指定 Debug 服務(wù)器的Host:Port,以供 Debug 客戶端程序連接。
二、遠(yuǎn)程調(diào)試步驟
1、IDEA配置啟動(dòng)環(huán)境(Debug服務(wù)器)
2、開啟遠(yuǎn)程Debug服務(wù)
1)對(duì)于jar包項(xiàng)目
命令行添加啟動(dòng)項(xiàng),如下:
## 注意新參數(shù)必須在 -jar 之前java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar test.jar
2)對(duì)于war包項(xiàng)目
啟動(dòng)腳本(catalina.sh)添加如下信息:
## sudo vim $CATALINA_HOME/bin/catalina.shJAVA_OPTS='$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005'
注意:
1)有時(shí)候調(diào)試時(shí)提示Connect time out,這時(shí)候需要關(guān)閉防火墻
2)只有本地和遠(yuǎn)程的代碼保持一致才能進(jìn)行遠(yuǎn)程調(diào)試
到此這篇關(guān)于IDEA實(shí)現(xiàn)遠(yuǎn)程調(diào)試步驟詳解的文章就介紹到這了,更多相關(guān)IDEA 遠(yuǎn)程調(diào)試內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. python如何實(shí)現(xiàn)word批量轉(zhuǎn)HTML2. 利用單元測(cè)試對(duì)PHP代碼進(jìn)行檢查3. python爬蟲實(shí)戰(zhàn)之制作屬于自己的一個(gè)IP代理模塊4. python excel和yaml文件的讀取封裝5. Java8內(nèi)存模型PermGen Metaspace實(shí)例解析6. moment轉(zhuǎn)化時(shí)間戳出現(xiàn)Invalid Date的問題及解決7. python3實(shí)現(xiàn)往mysql中插入datetime類型的數(shù)據(jù)8. 如何對(duì)php程序中的常見漏洞進(jìn)行攻擊9. 用python-webdriver實(shí)現(xiàn)自動(dòng)填表的示例代碼10. Laravel操作redis和緩存操作詳解
