如何远程调试tomcatjava
一,Linux环境下tomcat
1. 服防火墙打开8000端口,容许外网访问;
2. 修改catalina.sh:搜索到以下行:
JPDA_ADDRESS="localhost:8000"服务器
改成:
JPDA_ADDRESS="0.0.0.0:8000"
意为:容许全部ip链接到8000端口,而不只是本地。
参考catalina.sh.debug的配置。架构
2. 执行下列命令开启调试模式:
/usr/local/tomcatDev/bin/catalina.sh jpda runeclipse
3. 在tomcat上建立远程调试,地址为tomcat所在服务器,端口为8000.socket
4. 在eclipse中,经过Debug Configuration - > Remote Java Application - > new 建立一个远程调试spa
二,Windows环境下debug
1. 服防火墙打开8000端口,容许外网访问;调试
2.在tomcat的bin目录下建立一bat文件,如debug.bat,将其内容修改成一下orm
set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket
set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000
startup
3.双击debug.bat便可以debug的方式启动tomcat
4. 在eclipse中,经过Debug Configuration - > Remote Java Application - > new 建立一个远程调试
三,相关名称解释:
1. jpda:Java Platform Debugger Architecture , Java平台调试架构,由Java虚拟机和调试平台组成。
11. Java虚拟机提供了Java调试的功能
12. 调试平台经过调试交互协议向Java虚拟机请求服务以对在虚拟机中运行的程序进行调试
这里咱们的eclipse就是那个调试的前台。咱们须要将本地的调试平台和服务器运行的项目结合起来。
2. 调试平台的Socket Attach 与 Socket Listen方式
两种方式的区别目前不太清楚,有知道的朋友们可留言