这里有一个大前提:tomcat中项目的和你的eclipse中的项目代码一致
有时候发现部署到测试服务器上面的项目出现了错误,但是通过日志不能分析具体原因,本地也无法复现,这时候远程调试就可以发挥作用了。
首先,到服务器的tomcat目录下,找到bin文件夹,修改catalina.sh文件,在文件中
CATALINA_OPTS="$CATALINA_OPTS...
后面添加如下代码:
CATALINA_OPTS="$CATALINA_OPTS -server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787"
这里我选用的是8787端口,当然你也可以选择其他的空闲端口。(netstat -ano|grep 8787 通过这个命令可以查询到端口是否被占用)
然后,到eclipse中右键点击项目,选择debug as选项。选择Debug Configurations,在弹出的界面中找到Remote Java Application并双击,这样就会新增一个子菜单。
在这个子菜单中,有两个需要注意的,一个是host,一个是port。
修改对应的host和port:host改为远程服务器的ip和刚刚提到的端口号8787,
修改完成后,点击右下角debug选项,项目启动成功
你可以开始远程调试了.