0
点赞
收藏
分享

微信扫一扫

【IDEA】远程调试

Alex富贵 2024-01-15 阅读 15

现在很多项目都是直接部署到服务器上,通常都是没有GUI界面的,也就是说没有办法进行本地调试。在日常工作中远程调试是非常重要的一个技能,虽然说这个没办法解决线上问题,但是可以在测试环境下进行远程调试从而找到线上问题的解决方法,因为这种方式比日志更加清晰,操作难度更低。下面通过调试weblogic服务器的方式来进行举例(为什么用weblogic,因为我刚好不会哈哈,工作需要才接触的)。

JVM虚拟机设置

无论是通过脚本方式启动还是命令行启动的形式,都需要添加以下JVM参数:

#针对JDK15.-1.8
-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=localhost:8000
针对JDK1.9及以上
agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:8000

如果是命令行的方式直接添加即可,但是如果是脚本方式启动的话需要去启动脚本中改动,如下图:

【IDEA】远程调试_jar

注意:这里需要找到一定会添加到JAVA_OPTIONS的区域,确保配置生效。

weblogic是有自己的调试方式的,但是我没有深究,这个对于我要表述的内容关系不大,因此没有说明。

此时我们输出启动脚本命令startWebLogic即可看到服务已经停住了,在等待IDEA进入Debug模式。

【IDEA】远程调试_jar_02

IDEA设置

按照如图所示步骤即可配置好调试模式,名字改不改其实关系不大。

【IDEA】远程调试_jar_03

【IDEA】远程调试_服务器_04

导入JAR包

根据bug出现的位置去找到对应的jar,小项目最好导入一整个,这样可以全局检索到。

【IDEA】远程调试_jar_05

没导入之前可以看到红色框选部分是只有jar包的,IDEA扫描完成之后会跳出这个界面,这里是因为我的Library中已经存在了一个modeles,也就是导入过了。

【IDEA】远程调试_服务器_06

此时打开File -> Project Structure

【IDEA】远程调试_jar_07

找到Project Settings下的Libraries,把这些删掉就可以了。

【IDEA】远程调试_jar_08

此时再添加为Library就可以了(我只是强迫症不喜欢重名,不用删除也可以)

【IDEA】远程调试_jar_09

此时modules下的jar就都可以打开了。

【IDEA】远程调试_服务器_10

举报

相关推荐

0 条评论