利用Eclipse遠程調試Java應用

步驟:

  1. 配置遠端java應用的jvm參數
  2. 在eclipse中新建遠程調試的配置
  3. 啓動遠端java應用
  4. 在eclipse中啓動調試

1. 配置遠端Java應用的jvm參數

通常java應用的啓動是通過傳入jvm參數然後調用java可執行程序實現,類似下面這樣:

/usr/bin/java -Xmx2g -XX:+UseG1GC -cp /opt/demo/lib/* com.demo.Hello

要支持遠程調試,需要在jvm啓動參數中指定如下參數:

-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=19004
  • -agentlib 指定代理庫參數
  • jdwp 代理庫名稱(Java Debug Wire Protocol)
  • transport=dt_socket 通信方式採用 socket(dt的含義不明)
  • server=y 遠端應用扮演服務器角色,監聽調試進程的連接
  • suspend=y 遠端應用啓動時掛起,直到調試進程連接成功
  • address=19004 遠端應用作爲服務器監聽的本地端口(等待調試進程連接此端口)

注意:suspend=y在調試任務結束後,既想要保留配置,又需要恢復正常使用時,可以改成 suspend=n 避免啓動時掛起。確定不需要調試,則將整個 -agentlib 參數去掉。

2. 在eclipse中新建遠程調試的配置

在這裏插入圖片描述

3. 啓動遠端java應用

遠端應用按配置之前的原始方式啓動,觀察日誌進程建立後,將會進入掛起狀態,不再產生日誌,如下圖所示:
在這裏插入圖片描述

4. 在eclipse中啓動調試

在eclipse的調試菜單中,點擊調試,選擇剛纔創建的配置,即可啓動調試進程。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章