JDWP
JDWP是Java Debug Wire Protocol 的缩写,它
定义了调试器(debugger)和被调试的Java虚拟机(target vm)之间的通信协议。
SpringBoot+debug
1、springboot框架搭建
打开idea选择Spring Initializr
2、选择Web的启动包
3、建一个测试类:比较简单的一个for循环
@RestController
public class testDebug {
@RequestMapping("/debug")
public static int digui(){
int sum = 0;
for (int i = 0 ; i < 50 ; i ++){
sum += i ;
}
return sum;
}
public static void main(String[] args) {
System.out.println(digui());
}
}
4、
加上断点,debug测试就简单的实现了在本机的debug测试
5、打包项目
6、找到打好的夹包
7、
将war包放到Linux中tomcat下webapps文件下
8、
启动tomcat,输入解压后war包的文件名+url名
## 通过JDWP远程debug
1、修改远程tomcat中bin/startup.sh中的内容
2、修改bin/catalina.sh中的端口号:将loacalhost:8080改为54321(什么都行,只要没有被占用)
3、启动tomcat,然后查看54321端口是否已经被监听输入命令:netstat -nap|grep 54321
4、在idea中配置找到Run中Edit Configurations
5、点击“+”号,选择Remote
6、修改Host为linux中的IP地址,port为自己设置的端口号,class path为项目名
7、启动项目,注意不要右键启动,点击右上角的小蜘蛛
8、连接成功
9、查看54321的进程
10、在idea项目中打断点,然后启动项目,刷新浏览器,发现idea会卡在断点的位置,然后远程debug成功