所謂的遠程調試就是服務端程序運行在一臺遠程服務器上,咱們能夠在本地服務端的代碼(前提是本地的代碼必須和遠程服務器運行的代碼一致)中設置斷點,每當有請求到遠程服務器時時可以在本地知道遠程服務端的此時的內部狀態。下面介紹一下Intellij IDEA下對Springboot類型的項目的遠程調試功能。java
首先,打開Edit configurations,點擊+號,建立一個Remote應用。spring
填寫name,配置Host地址(遠程服務器地址)和端口(選一個未被佔用的端口)。而後複製For JDK1.4.x下面的參數,示例配置的端口爲5005:springboot
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005
通過以上步驟,已經得到了啓動遠程服務器的參數。在啓動springboot時默認使用java命令來啓動。服務器
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 springboot-test-1.0-SNAPSHOT.jar
這樣服務端就監聽在5005端口了。能夠經過如下命令來檢查是否監聽成功:socket
netstat -anp | grep 5005
經過以上步驟已經完成了服務器端參數的添加。下面啓動剛纔配置的Remote服務,即test-spring。在啓動時候咱們會發現此項啓動程序只有debug啓動模式。spa
啓動完成,對須要debug的代碼打上斷點,剩下的操做步驟就是訪問遠程服務器對應的業務請求,本地就會同步debug。其他的操做與本地debug相同debug