Intellij的Debug除錯?
一、是什麼?解決了什麼問題?
分散式系統開發中需要關注的一個問題就是如何測試?而我們經常會遇到一種情況則是,系統在linux上部署,我們在本地電腦的Windows程式上開發,這樣每一次測試都需要不斷地打log日誌,打包,部署,無疑會浪費大量的時間和人力!因此如果能把程式碼部署到遠端的Linux上的tomcat中,而在本地聯調則可以大幅度提高效率! java遠端debug解決的便是這個問題:
--------------------------------------------------------------------------------------------------------------------------------------------------------------
服務端程式執行在一臺遠端伺服器上,我們可以在本地服務端的程式碼(前提是本地的程式碼必須和遠端伺服器執行的程式碼一致)中設定斷點,每當有請求到遠端伺服器時時能夠在本地知道遠端服務端的此時的內部狀態。
遠端除錯的原理是:
遠端除錯的原理是兩個VM之間通過debug協議進行通訊,然後以達到遠端除錯的目的。兩者之間可以通過socket進行通訊。首先被debug程式的虛擬機器在啟動時要開啟debug模式,啟動debug監聽程式。jdwp是Java Debug Wire Protocol的縮寫。
二、遠端debug的流程?
1-------你要有一份與遠端程式碼一致的程式碼在本地開發工具上
2-------你要在linux上面啟動tomcat的 遠端監聽程式
3-------在開發工具上配置IP和埠和命令連線過去
4-------在開發工具上啟動遠端DeBug
5-------在原生代碼上打斷點,從本地向遠端方請求
三、如何操作例項 ?
===>以下提供兩種方法,如下: