【IDEA】 远程调试


远程调试

使用特定JVM参数运行服务端代码

要让远程服务器运行的代码支持远程调试,则启动的时候必须加上特定的JVM参数,这些参数是:

-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=${debug_port}

例如

java -jar  -Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=6666 demo-0.0.1.jar  --server.port=9090

本地连接远程服务器debug端口

打开Intellij IDEA,在顶部靠右的地方选择”Edit Configurations…”,进去之后点击+号,选择”Remote”,
按照下图的只是填写红框内的内容,其中Name填写名称,
这里为halo-remote,host为远程代码运行的机器的ip/hostname,
port为上一步指定的port,本例是6666。然后点击Apply,最后点击OK即可.

【IDEA】 远程调试

本地IDEA启动debug模式

现在在上一步选择”Edit Configurations…”的下拉框的位置选择上一步创建的remote webserver,然后点击右边的debug按钮(长的像臭虫那个),看控制台日志,如果出现类似“Connected to the target VM, address: ‘xx.xx.xx.xx:5555’, transport: ‘socket’”的字样,就表示连接成功过了。我这里实际显示的内容如下:

Connected to the target VM, address: 'localhost:6666', transport: 'socket'

设置断点,开始调试

远程debug模式已经开启,现在可以在需要调试的代码中打断点了,比如:

【IDEA】 远程调试

备注:需要注意的是,用于远程debug的代码必须与远程部署的代码完全一致,不能发生任何的修改,否则打上的断点将无法命中,切记切记。

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/tech/pnotes/288322.html

(0)
上一篇 2022年9月8日 23:43
下一篇 2022年9月8日 23:44

相关推荐

发表回复

登录后才能评论