概述
本篇记录的是使用idea远程调试已发布在服务器上的springboot程序。为什么要远程调试?还不是自己写的bug在线上看不出是哪里出了问题,总不能傻AA的打一大堆日志去看问题吧(当然有时候也是必要的哈)。等下日志少打了,又得再加几行再发布?循环循环.........
准备环境
idea
上传jar包到服务器上
配置准备
IDEA端
1. 选中Edit Configurations,点击“+”新增一个 “Remote JVM Debug”,并配置
2. 填写Name,配置Host地址(远程服务器IP),远程服务器监听端口(默认5005,可以选用其他未被占用的端口)。然后复制For JDK1.4.x下面的参数,示例配置的端口为5005
服务器端
根据idea上面配置的信息,我们服务端可以根据java启动命令添加相关参数达到远程调试的目的
类似网上的启动脚本
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 test.jar
或者完全按照idea提供的参数启动
java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 test.jar
总有一款你喜欢的
这时候再服务器上应该就可以看到5005的这个进程
调试
这时候啥都别说,本地IDEA上再对应的工程中打上断点,就可以直接调试服务器上的代码了。前提你本地的代码是和服务器上发布的包一致哈