eclipse遠端除錯Tomcat方法(測試成功並且說說遇到的坑)
PS:文中容易引起歧義的地方已經做了修改;另外,本人蔘照以下步驟操作,結果無法除錯,後來發現是breakpoints的設定。。,如圖是不跳過斷點,如果點選了就是跳過斷點。。
1、如果要除錯遠端Linux下tomcat應用,配置tomcat在catalina.sh中新增如下
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"(不要換行,要在同一行)
2、如果要遠端除錯Window下tomcat應用,修改catalina,bat檔案,新增:
Set “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=8000 :除錯伺服器監聽的埠
server=y : 是否是伺服器端,n為客戶端
suspend=n : 啟動過程是否載入暫停,y
3、啟動tomcat,看看tomcat是否啟動成功,
如果啟動成功,tomcat日誌檔案(catalina.out)中會有如下輸出:
Listening for transport dt_socket at address: 8000
4、使用eclipse除錯:
點選debug,就可進行除錯了
剩下的就和普通除錯一樣了。斷點直接在原始碼中新增就行
5、可能出現的連線問題:
Failed to connect to remote VM. Connection refused.
Connection refused: connect。
出現如圖所示的情況可能是已經建立了一個連線了。
解決方法:去debug透檢視中,
找到點選斷開連結,就可以解決問題了。