java 远程 DEBUG 调试 (eclipse,idea)

本贴最后更新于 1899 天前,其中的信息可能已经物是人非

远程 DEBUG 调试

当程序运行的结构与我们所预期的结果不一样的时候,我们往往会想到 DEBUG,如果程序没有在本地怎么调试呢?这时候就需要进行远程调试.远程的 debug 的原理是,服务端 jvm 使用 debug 模式,监听一个端口,客户端使用 socket 进行连接,连接成功就可以进行远程调试.

JVM 如何开启 DEBUG 模式?

  1. JDK1.5 之前
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1234

参数大意:
debug:debug模式

runjdwp:运行java debug协议配置

transport:使用的通信方式

server:是主动连接调试器还是作为服务器等待调试器连接

suspend:是否在启动JVM时就暂停,并等待调试器连接

address:地址和端口,地址可以省略,两者用冒号分隔

  1. JDK1.5 之后
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8888

参数差不多,不再赘述.

以上是远端的 JVM 配置,一般都是运维配置好的,不用担心不会配置.

如何连接 JVM 进行远程 debug?

  1. eclipse

image

点击 debug configurations

image

image

这里的 host 和端口是远端 JVM 的 IP 地址和端口,这个可以问运维.配置好后点击刚才配置的 DEBUG 就可以远端 DEBUG 了
2. idea

image

image

image

  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    75 引用 • 258 回帖 • 625 关注
  • IDEA

    IDEA 全称 IntelliJ IDEA,是一款 Java 语言开发的集成环境,在业界被公认为最好的 Java 开发工具之一。IDEA 是 JetBrains 公司的产品,这家公司总部位于捷克共和国的首都布拉格,开发人员以严谨著称的东欧程序员为主。

    180 引用 • 400 回帖
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3165 引用 • 8206 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...