最近做一個和三方聯調的項目,需要異步回調到指定的公網IP,但是本地沒有獨立的IP,用花生殼或者自己搭建pptpd vpn比較繁瑣,相比來說用eclipse直接遠程調試比較方便。
首先:
修改tomcat/bin/catalina.sh中的參數:
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
參數說明:
-Xdebug : 啟用調試模式 -Xrunjdwp<sub-options> : 加載JVM的JPDA參考實現庫 transport=dt_socket :Socket連接,可選dt_shmem 通過共享內存的方式連接到調試服務器 address=8080 :調試服務器監聽的端口 server=y : 是否是服務器端,n為客戶端 suspend=n : 啟動過程是否加載暫停,y為啟動時暫停,方便調試啟動過程
window下的參數:
Set “CATALINA_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
然后啟動 tomcat ,查看日志中是否有:
Listening for transport dt_socket at address: 8000
然后設置eclipse遠程調試:
點擊debug,就可進行調試了
如果遇到 報錯:
Failed to connect to remote VM. Connection refused.
Connection refused: connect
出現如圖所示的情況可能是已經建立了一個連接了:
找到點擊 斷開鏈接,就可以解決問題了