传统方式是在代码中各种的日志 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.编辑配置
2.新建远程调试
3.填上ip,上面端口号,
4.启动
需要的位置打上断点,就可以愉快的进行远程调试啦
注意,本地代码,和远程代码一直,才能打断调试