开源一夏 | 十分钟 教你 IDEA 远程 debugger SpringBoot 项目
如题哦,项目发布到服务器上后,每天被不同的 bug 所困扰。强大的 idea 超出你的想象,强大到可以远程 debugger,就和在本地一样一样的。进入正题...
前提概要
线上即服务器代码必须与本地一致,否则会引起误导。
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.
大佬勿喷,结束。
版权声明: 本文为 InfoQ 作者【Geek_32c728】的原创文章。
原文链接:【http://xie.infoq.cn/article/1019df31001a1d44d36e4db6a】。文章转载请联系作者。
评论