本地連接遠程服務器debug端口
remote webserver,host為遠程代碼運行的機器的ip/hostname。然后點擊Apply,最后點擊OK即可

第一個是名字,自己取名區分,host寫服務器地址,看需要填寫外網地址,prot寫自己的就行,注意,這個不是項目啟動的端口號!!!!!
啟動的時候復制這段話,修改命令:nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5555 -jar mapping-integration-1.0-SNAPSHOT.jar --server.port=9208 > log/mapping-integration.log &
本地IDEA啟動debug模式
現在在上一步選擇”Edit Configurations…”的下拉框的位置選擇上一步創建的remote webserver,然后點擊右邊的debug按鈕,看控制台日志,如果出現類似“Connected to the target VM, address: ‘xx.xx.xx.xx:5555’, transport: ‘socket’”的字樣,就表示連接成功了,如果報錯出現連接不上,看看是不是啟動命令忘記添加上面那段話了,然后重新點擊debug。
設置斷點,開始調試
遠程debug模式已經開啟,現在可以在需要調試的代碼中打斷點了,比如:
如圖中所示,如果斷點內有√,則表示選取的斷點正確。
現在在本地發送一個到遠程服務器的請求,看本地控制台的bug界面,划到debugger這個標簽,可以看到當前遠程服務的內部狀態(各種變量)已經全部顯示出來了,並且在剛才設置了斷點的地方,也顯示了該行的變量值。
備注:需要注意的是,用於遠程debug的代碼必須與遠程部署的代碼完全一致,不能發生任何的修改,否則打上的斷點將無法命中。
