美文网首页IT必备技能
idea远程调试,一个用上就被老大表扬的黑科技

idea远程调试,一个用上就被老大表扬的黑科技

作者: Java面试官 | 来源:发表于2020-06-21 11:29 被阅读0次

不知道各位有没有遇见以下情况:

【国服第一测试】:我本地环境出了一个bug,那个【稀饭下雪】你过来看看。

或者:

【国服第一测试】:外网正式服出了一个bug,我导了数据库环境到本地,看了下确实是bug,那个【稀饭下雪】你过来看看。

再或者:

【国服第一狗策划】:内网服怎么又出bug了,那个【稀饭下雪】你过来看看。

然后,我每次都是屁颠屁颠过去看了下

【稀饭下雪】:哦,确实有bug,那个xxx,你将数据库发给我下,还有对应账号发给我下,我本地试试,然后回来就是操作三连:拉对应版本代码、导数据库、打断点、使用对应账号重现bug,而其中导数据库是最鸡儿麻烦的一件事情,因为一个数据库几个G你导导看。

后来,聪明机智的我,就想着有没有一种办法可以让自己电脑的idea直接连上对方的工程环境,进行远程调试呢?后来网上查了下,哦豁,还真的有

img

且听我说说这个黑科技如何处理,有兴趣的可以在自己项目组试试,信我,用上后老大会表扬你的!!!

以我之前的 群聊聊天室为例,自然你们可以随便找个工程,我只是图个方便,本地搞了两个环境,一个是打包好的jar包,这个jar包对标国服第一测试的工程环境,而另一个环境对标我本地的工程环境,接下来开始idea黑科技的表演:

  1. 要让国服第一测试的服【远程服务器】运行的工程支持远程调试,方法超级简单,启动的时候加上特定的JVM参数即可,这些参数是:

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

    可以看到5005,作用便是提供远程调试连接的端口,举个例子,为了支持远程调试,现在启动jar包的命令行应该改成

    java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar chatRoom-0.0.1-SNAPSHOT.jar

    可以看到我这边的启动情况

    image
  2. 接下来就是我本地idea的设置了,本地idea这边新增一个启动环境,启动远程调试模式,步骤如下

    image
image image-20200621102109797 image-20200621102144825

没错,Host那边输入的就是国服第一测试的服【远程服务器】的ip,而Port便是我们上面启动远程调试服时指定的,至此,设置完成,接下来启动该调试模式看看,我们可以看到

image

说明启动成功,已经连上了远程服的调试,找个登陆接口打个断点看看

image

之后访问下远程服的login接口,可以看到

image

嗯,远程调试成功啦,接下来可以在项目组推广一波啦,然后就是大受表扬啦。

对于我们项目组来说,这种远程调试真是超级方便,往后如果遇见国服第一测试或者国服第一gou策划找上门来,就可以直接回复,给我你的ip即可,还导个鸡儿的数据库!!!

接下来说下原理:JVM本身支持远程调试,所以也不算是idea自身的功劳,JVM本身提供了一个简单的调试工具JDB,支持设置断点及线程级的调试,同时不同的JVM通过接口的协议联系,而本地的环境可以远程JVM建立联系和通信,在这里idea只是做了这一层的支持,实际上eclipse也是支持的。

相关文章

  • idea远程调试,一个用上就被老大表扬的黑科技

    不知道各位有没有遇见以下情况: 【国服第一测试】:我本地环境出了一个bug,那个【稀饭下雪】你过来看看。 或者: ...

  • SpringBoot项目IDEA开启远程调试

    title: SpringBoot项目IDEA开启远程调试author: XDiongavatar: https:...

  • Idea远程调试

    Idea远程调试  当把一个本地项目部署到远程服务器后有可能出现意想不到错误,这个时候通过远程调试能够更清楚的找到...

  • idea远程调试

    一、好句 你不过是失去了一个错的人,却也绕开了一段错误的人生,伤心后要记得庆幸。 二、背景 tomcat的远程调试...

  • IDEA远程调试

    https://blog.csdn.net/lzh657083979/article/details/79597139

  • idea 远程调试

    idea 配置 如图1,新建远程配置,配置远程连接和要调试的项目 远程tomcat配置 新建文件setenv.sh...

  • idea远程调试

    概述 对于分布式系统的调试不知道大家有什么好的方法。对于我来说,在知道远程调试这个方法之前就是在代码中打各种log...

  • idea远程调试

    若 address=*:5005 提示 transport error 202: gethostbyname: u...

  • Idea远程调试

    一、Idea 远程配置 二、打jar包 1.配置pom 2.打jar包 二、远程服务器启动 将 jar 包放到远程...

  • IDEA远程调试Spark

    1.前言 本文讲述如何使用IDEA远程调试spark,这里所说的调试spark包括: 调试spark应用程序,也就...

网友评论

    本文标题:idea远程调试,一个用上就被老大表扬的黑科技

    本文链接:https://www.haomeiwen.com/subject/pfioxktx.html