1. 程式人生 > >IntelliJ Idea 遠端除錯Java服務

IntelliJ Idea 遠端除錯Java服務

1、背景

在很多情況下,服務端程式部署在遠端,某部分邏輯出現問題時,不停地對程式碼修改,增加log查出問題根源。但是,有些服務啟動時間較長、不斷的打包、上傳、測試會令人非常頭疼。因此,可以使用遠端除錯的方式對遠端部署的服務除錯。

2、準備

  • idea IDE、遠端服務原始碼
  • 遠端服務
  • 測試客戶端

3、部署圖

部署圖

由於是對原始碼進行除錯,原始碼經編譯後執行在遠端伺服器上,並且在本地Idea IDE中開啟原始碼。在Idea連線上遠端服務後,測試請求遠端服務,在可以看到idea中設定的斷點資訊。

4、步驟

  • 4.1 遠端服務執行增加特定JVM引數
-Xdebug -Xrunjdwp
:transport=dt_socket,suspend=n,server=y,address=8889

其中,address=8889為debug埠,idea需要連線此埠。

  • 4.2 Idea 連線遠端服務
    按照下圖的三個步驟進行操作,建立遠端連線。
    連線

  • 4.3 debug
    在遠端服務啟動後,點選下圖中的“蟲子”(shift+F9)進行除錯,並在程式碼中設定好斷點。

debug

  • 4.4 客戶端請求

測試請求
從圖中看到,當請求後,變數值不僅動態出現在程式碼後面,而且在底部也有相應的變數值。

5、備註

只有新增的斷點中有對號時,才表示斷點有效。
如果出現下圖的情況,可以看看是否是禁用了斷點


備註