项目总结61:IDEA远程调试linux下的tomcat
前提
要远程调试代码,首先的保障本地的代码和远程tomcat的代码是同一份
第一步:在本地idea配置一个远程tomcat服务器
- host就填写远程主机ip
- port填写访问的端口(不是调试端口)
- Startup/Connection页面设置调试端口:8888(这个端口可以随便写,只要不被占用就很好,另外要和下面的catalina.sh文件中配置中的CATALINA_OPTS的address参数保持一致)
第二步: 配置Linux tomcat 的 catalina.sh文件,加入如下配置
CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8888,suspend=n,server=y"
第三步:启动Linux tomcat服务,再以Debugg模式启动本地IDEA
备注:关于 -Xdebug -Xrunjdwp:transport=dt_socket,address=8888,server=y,suspend=n 的理解
- -Xdebug是通知JVM工作在DEBUG模式下,
- -Xrunjdwp是通知JVM使用(java debug wire protocol)来运行调试环境。该参数同时了一系列的调试选项:
- transport指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows平台。
- address设置监听端口号
- server参数是指是否支持在server模式的VM中.
- suspend指明,是否在调试客户端建立起来后,再执行JVM。
END