IDEA远程调试Tomcat
2016-05-10 09:52
756 查看
IDEA远程调试Tomcat
之前基本上都是打log来找BUG的,看看log基本上也就知道什么问题了。但是把有些问题还是调试来的方便,于是开始研究怎么远程调试Tomcat。。。。表示各种教程太杂太乱,基本上不懂原理。弄了半天,终于能够调试了。。记录下。一、tomcat的jpda服务
什么是JPDA呢JPDA(Java Platform Debugger Architecture) 是 Java 平台调试体系结构的缩写,通过 JPDA 提供的 API,开发人员可以方便灵活的搭建 Java 调试应用程序。JPDA 主要由三个部分组成:Java 虚拟机工具接口(JVMTI),Java 调试线协议(JDWP),以及 Java 调试接口(JDI)。而像Eclipse和IDEA这种开发工具提供的图形界面的调试工具,其实就是实现了JDI。关于JPDA的详细信息,可以查看developerWorks上的系列文章—-深入Java调试体系
- - - - - - - - - - - - -来自http://blog.csdn.net/mhmyqn/article/details/49209541
tomcat中启动jpda服务
./catalina.sh jpda start
在catalina.sh脚本中,可看到jpda的默认配置是这样的
if [ "$1" = "jpda" ] ; then if [ -z "$JPDA_TRANSPORT" ]; then JPDA_TRANSPORT="dt_socket" fi if [ -z "$JPDA_ADDRESS" ]; then JPDA_ADDRESS="8000" fi if [ -z "$JPDA_SUSPEND" ]; then JPDA_SUSPEND="n" fi if [ -z "$JPDA_OPTS" ]; then JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND" fi CATALINA_OPTS="$JPDA_OPTS $CATALINA_OPTS" shift fi
默认的端口是8000,当然也可以改成自己喜欢的端口。好吧,其实这些脚本我根本看不懂,但是对shell script一直有着神圣的敬意,于是我觉这个周末学学这个神奇的东西。。跑题了
二、IDEA如何操作
1、添加remote tomcat server2、填写主机信息,IP:PORT(注意这里的port不是jpda调试的端口,而是tomcat访问端口)
3、进入startup/connection—>Debug 看到下面图的信息,把下面的端口改为jpda调试端口8000
OK,通过 ./catalina.sh jpda start命令重新启动tomcat后就可以在idea中调试了。。(注意代码版本要和tomcat中部署的一致。。tomcat关闭命令 catalina.sh stop)
本人使用的IDEA版本 15.2 tomcat版本apache-tomcat-8.0.32 系统:osx 10.11.2(系统不同会稍微不同。。请自行探讨)
[b]**[/b]分割线[b]2016-3-15*****[/b]
问题记录
在使用过程过还是遇到了一些问题,主要还是端口的问题。当一台机器上得一个端口已经与远程tomcat宿主机开始建立通讯的时候(tcp ESTABLISHED)的时候,会无法再次建立连接,但是这个时候可能并没有反馈。但问题是可能已经建立的连接你也不知道是如何出现了,这个时候需要查看远程主机的端口使用情况,查看是否已经建立连接。如果已经建立连接,但是调试时并卵,想办法把这个连接关闭(重启IDE或者杀进程等等),再去建立自己的想要的连接来调试。
相关文章推荐
- 64位tomcat配置成服务,启动报错的问题
- Tomcat中更改网站根目录
- Tomcat server.xml配置
- CentOS7 安装 Java 8 以及Tomcat8
- Tomcat服务器
- Execption
- Tomcat、Servlet 和Javaee版本对应
- 有关JDK/JRE/Eclipse/Tomcat简单入门详解
- Tomcat部署项目(JEECG)时报错处理
- javaweb的负载均衡,tomcat集群和session共享
- tomcat启动时报:IOException while loading persisted sessions: java.io.EOFException的解决方案
- tomcat7的安装与配置、及Servlet部署
- Eclipse中Tomcat overview设置
- tomcat PermGen space
- Tomcat绿色免安装配置及配置中遇到的问题的解决方案
- 一台电脑上同启动两个Tomcat的方式
- tomcat 内存优化,虚拟路径配置,解决内存溢出的办法---记住这么几点就无敌了
- Tomcat的部署
- Eclipse+JDK+Tomcat+MyEclipse的配置
- 基于nginx的tomcat负载均衡和集群