傳統方式是在代碼中各種的日誌 log 埋點然後重新部署進行調試,再根據 log 中的信息進行分析。
如果你的 log 埋點不合理,就要不停的修改代碼、不停的打包部署。
有沒有什麼騷操作避免上面的問題呢?
有,那就是遠程調試
要讓遠程服務器運行的代碼支持遠程調試,則啓動的時候必須加上特定的JVM參數,這些參數是:
-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=${debug_port}
注意,
本人在這裏踩過一個坑,必須要說一下。
這個參數放在最後,會失效。
例如
java -jar art.jar -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=n
正確的姿勢是:
java -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=5005,suspend=n -jar art.jar
IDEA配置
1.編輯配置
啓動
打上斷點,就可以愉快的進行遠程調試啦
注意,本地代碼,和遠程代碼一直,才能打斷調試