有两种模式,这里介绍的是我测试通过的一种方式(attach to remote JVM)
一、首先启动jar 指定一个监听端口 ,启动命令如下:
java -Xdebug -Xrunjdwp:transport=dt_socket,address=端口号,server=y,suspend=y -jar jar包名称
例如:
java -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=y -jar test.jar
出现此提示:Listening for transport dt_socket at address: 5005 说明操作成功,接下来开始打开IDEA 操作
二、打开idea
创建一个"Remote" 执行配置:
如果是远程调试jar 这里就是远程 IP地址
因为你的Jar文件已经在执行了, 所以可以直接开始 debug:
这样
或者
如果出现以下错误,那是因为第一步没有执行jar包
Unable to open debgger port(localhost:5005):java.net.ConnectException"Connection refused:connect"
出现这个表示成功,接下来就可以打断点调试了,和本地运行一样打断点,注意保持本地代码和jar代码一致,不然会出现断点无效的情况