idea中Run->Edit Configurations...
填寫name Host port
點擊Apply即可;
在遠程服務啟動的時候 運行SringBoot時 加上
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
示例:
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 springboot-XXX-1.0-SNAPSHOT.jar
剩下的部署跟你本地debug的是一樣的
遠程調試原理
眾所周知,Java 程序是運行在Java 虛擬機(JVM )上的,具有良好跨平台性,是因為Java程序統一以字節碼的形式在JVM中運行,不同平台的虛擬機都統一使用這種相同的程序存儲格式。因為都是類字節碼文件,只要本地代碼和遠程服務器上的類文件相同,兩個JVM通過調試協議進行通信(例如通過插座在同一個端口進行通信),另外需要注意的時,被調試的服務器需要開啟調試模式,服務器端的代碼和本地代碼必須保持一致,則會造成斷點無法進入的問題。