JAVA WEB远程DEBUG

在我们平常的开发中,经常会出现服务器上代码bug本地无法复现的情况,一般都是尝试在代码中各种加日志打印,这样就需要一直上包,消耗了我们的时间,消耗了我们的精力,我们可以用远程debug的方式来临时复现bug(不要在生产服务器这么玩)。

远程debug需要准备一些前置工作。

1,在服务器的jar启动脚本上要加几个启动参数

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=xxxx

其中: dt_socket:通讯协议

  server:打开服务端调试

  suspend:JVM是否立即执行

  address:连接远程debug的ip和端口,ip可以省略

2,这个时候服务端就开启了支持远程debug模式,我们再配置一下客户端

      使用IDEA作为远程客户端来连接

我们添加一个Remote JVM Debug 配置。

这里的位置1我们填命名当前这个debug配置名称。

位置2我们填远程服务器的ip

位置3我们填远程服务器的端口(要和上面我们服务器上启动jar参数中开启的远程debug端口对应)

位置4自动生成远程debug的对应启动参数

 

然后我们启动一下试试看

当控制台出现这行提示的时候,就代表我们成功连接上了远程服务器。

 

我们打个断点,发现已经成功进入本地断点了。

 

注意事项:

1,本地断点会阻塞服务器上的执行。

2,修改本地代码并不会实时生效,还是要重新打包过去发布。

 

debug
idea

关于作者

Dane.shang
快30岁了还没去过酒吧
获得点赞
文章被阅读