Tomcat使用IDEA远程Debug调试

Tomcat执行环境:CentOS6.5、Tomcat7.0、IDEA

远程Tomcat设置

1、在tomcat/bin下的catalina.sh上边加入下边的一段设置

CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=60222,suspend=n,server=y"

这里写图片描写叙述

2、address=60222 这个是后边IDEA设置的时候须要用到的调试port,能够随意设置一个未使用的port。可是后边的配置都要一致.

IDEA设置

1、加入Tomcat Server选择Remote
这里写图片描写叙述

2、设置对应的參数
这里写图片描写叙述

  • xxx.xxx.152.67:8080为远程Tomcatserver的IP地址和port,这里能够设置域名。比如:http://security.xxxx.cn/login.do

  • 60222这个port为1.1步中设置的debugport。适合tomcat的port不一样的;

  • 这里的Remote staging选择的都是same file system,这就要求本地代码和远程Tomcat的代码要一直;

3、Startup/Connection
这里写图片描写叙述

选择Debug、Socket、调试port这里是60222

4、选择执行

这里写图片描写叙述

然后点击右边的debug就可以执行(首先Tomcat要启动)

5、是否成功

这里写图片描写叙述

能够看到已经连接成功,

查看Tomcatserver日志。例如以下:
这里写图片描写叙述

6、假设失败

  • 假设出现port被拒绝:

这里写图片描写叙述

这样的可能是tomcat并未启动,或者遇错误停止,重新启动Tomcat就可以

  • 连接失败。其它问题

首先在server端查看 调试port 这里是60222的使用情况

[root@VM_92_170_centos bin]# lsof -i:60222
COMMAND   PID USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
java    12064 root    5u  IPv4 1320209      0t0  TCP 1x.xxx.xxx.170:60222->1xx.xx.xxx.231:13325 (ESTABLISHED)

能够看到这是自己本地和远程的一个连接。假设连接失败却看到上边的使用情况。请使用kill -9 PID杀死进程。重新启动Tomcat。然后在IDEA中又一次执行debug。
本例为:kill -9 12064

原文地址:https://www.cnblogs.com/gavanwanggw/p/7120305.html