写点什么

开源一夏 | 十分钟 教你 IDEA 远程 debugger SpringBoot 项目

作者:Geek_32c728
  • 2022 年 8 月 03 日
  • 本文字数:562 字

    阅读完需:约 2 分钟

如题哦,项目发布到服务器上后,每天被不同的 bug 所困扰。强大的 idea 超出你的想象,强大到可以远程 debugger,就和在本地一样一样的。进入正题...

前提概要

线上即服务器代码必须与本地一致,否则会引起误导。

1.启动配置

nohup java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 xxx.jar >/dev/null 2>&1 &
复制代码


正常启动是


nohup java -jar  xxx.jar >/dev/null 2>&1 &
复制代码


只需中间加入-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 该参只是本地映射项目端口,与实际访问端口不发生冲突。建议不同,相同的端口号还不知道有什么坑。


参数含义说明


-agentlib:来自于 java 详解 控制台打印 java 输出



jdwp:java debug wire protocol 简写 意思是通知 JVM 使用来运行调试环境



transport=dt_socket:采用通信方式为 socket.(另一种方式为 shmem 是指内存共享模式 不知道怎么用呢....)


server=y:上图可知含义为 是否监听 debugger 我们当然选择 yes


suspend=n:是否等待启动 选择 no


address=5005 :线上与本地映射的端口

2.idea 设置

(1)编辑

(2)创建 debugger

(3)设置


module 也要选上


(4)idea 启动


启动效果


(5)愉快的解决问题吧

知其然必其知所以然

你品 你品 你细品


其实就是通过 jvm 的 socket 通信将线上与本地连接在一起,本地通过监听配置的端口上从而实现本地 debugger.


大佬勿喷,结束。

发布于: 刚刚阅读数: 4
用户头像

Geek_32c728

关注

还未添加个人签名 2022.08.02 加入

还未添加个人简介

评论

发布
暂无评论
开源一夏 | 十分钟 教你IDEA 远程debugger SpringBoot项目_开源_Geek_32c728_InfoQ写作社区