用eclipse如何debug部署在tomcat上的应用(转)
2014-07-11 14:33
423 查看
一直想分享一下,因为有些同事用MyEclipse其实就是因为可以拿它来debug部署在tomcat上的应用。
myeclipse只不过是作了两个小动作:
1)用启用JPDA参数的模式启动了tomcat,以提供debug支持;
2)启动了一个Eclipse的RemoteJavaApplication;
这些通过tomcat和eclipse就可以做到。我简要说明一下。
配置tomcat的JPDA参数:
如果Tomcat使用的是JDK 1.5以上版本,那么JPDA可以使用JVMDI,配置方法为:
在tomcat的bin/catalina.bat文件中一开始加入:
set JPDA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=localhost:8000
如果是Mac OS X或是Linux,则在bin/catalina.sh文件中一开始加入:
export JPDA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=localhost:8000
其中address中的端口不一定非用8000哦,也可以换成其他端口。
如果使用的是JDK 1.4,那么只能使用JVMPI了,见后面的说明。
实际debug:
配置好JPDA参数后,按以下顺序即可debug了:
1)先以Debug模式启动tomcat;
即:在命令行下,进入tomcat的bin目录,执行catalina jpda start(会打开新窗口)或者catalina
jpda run命令(在当前窗口,和catalina run类似);
2)再在eclipse中运行相应的Remote Java Application;
第一次运行时,需要先建立这个Remote Java Application. 方法为打开"Debug"->"Open Debug Dialog",新建一个Remote Java Application, 给个合适的名字,Connection Type选择"Standard(Socket Attach)", Host和端口指定为localhost:8000(和上面tomcat中配置的端口一致),如下图示:
3)根据需要在java/jsp中设置断点,跟踪调试了;(和您熟悉的MyEclipse下一样)
说明:
1)以上方法在Windows/Mac OS X,Tomcat 5.5.25下均测试通过;Tomcat 5.0.x和6.0.x则参见4楼;
2)如果是JDK 1.4,JPDA参数需要调整为-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=localhost:8000,不过没试过,可能个别参数还需要再调整一下;(建议用JDK 1.5,因为JVMDI比JVMPI强大很多)
3)JPDA的相关参数说明见 http://java.sun.com/j2se/1.5.0/docs/guide/jpda/conninv.html
4)debug并不是诊断和解决问题的唯一方法,很多时候分析运行日志能更快地发现原因和解决问题.
myeclipse只不过是作了两个小动作:
1)用启用JPDA参数的模式启动了tomcat,以提供debug支持;
2)启动了一个Eclipse的RemoteJavaApplication;
这些通过tomcat和eclipse就可以做到。我简要说明一下。
配置tomcat的JPDA参数:
如果Tomcat使用的是JDK 1.5以上版本,那么JPDA可以使用JVMDI,配置方法为:
在tomcat的bin/catalina.bat文件中一开始加入:
set JPDA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=localhost:8000
如果是Mac OS X或是Linux,则在bin/catalina.sh文件中一开始加入:
export JPDA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=localhost:8000
其中address中的端口不一定非用8000哦,也可以换成其他端口。
如果使用的是JDK 1.4,那么只能使用JVMPI了,见后面的说明。
实际debug:
配置好JPDA参数后,按以下顺序即可debug了:
1)先以Debug模式启动tomcat;
即:在命令行下,进入tomcat的bin目录,执行catalina jpda start(会打开新窗口)或者catalina
jpda run命令(在当前窗口,和catalina run类似);
2)再在eclipse中运行相应的Remote Java Application;
第一次运行时,需要先建立这个Remote Java Application. 方法为打开"Debug"->"Open Debug Dialog",新建一个Remote Java Application, 给个合适的名字,Connection Type选择"Standard(Socket Attach)", Host和端口指定为localhost:8000(和上面tomcat中配置的端口一致),如下图示:
3)根据需要在java/jsp中设置断点,跟踪调试了;(和您熟悉的MyEclipse下一样)
说明:
1)以上方法在Windows/Mac OS X,Tomcat 5.5.25下均测试通过;Tomcat 5.0.x和6.0.x则参见4楼;
2)如果是JDK 1.4,JPDA参数需要调整为-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=localhost:8000,不过没试过,可能个别参数还需要再调整一下;(建议用JDK 1.5,因为JVMDI比JVMPI强大很多)
3)JPDA的相关参数说明见 http://java.sun.com/j2se/1.5.0/docs/guide/jpda/conninv.html
4)debug并不是诊断和解决问题的唯一方法,很多时候分析运行日志能更快地发现原因和解决问题.
相关文章推荐
- 用eclipse如何远程debug部署在tomcat上的应用
- 如何在Eclipse和Tomcat的Debug过程中启用热部署
- eclipse的web工程中import的jar文件,如何自动部署到tomcat中
- maven tomcat eclipse debug 调试 + hot code replace 热部署
- Eclipse中的Web项目如何自动部署到Tomcat
- eclipse如何正确部署tomcat7
- 在java EE版本eclipse下如何查看tomcat部署的位置 。版权声明:本文为博主原创文章,未经博主允许不得转载。
- Eclipse+maven+tomcat 热部署,如何实现?
- 如何在Eclipse下将Maven打包的war部署到远程Tomcat
- eclipse中项目名称修改后部署到tomcat中应用名称仍然是旧的
- Eclipse中的Web项目自动部署到Tomcat以及如何在Eclipse中使用My Eclipse工程
- eclipse部署tomcat应用问题记录
- 关于eclipse下tomcat部署应用时提示J2EE版本不支持问题
- 如何将Eclipse 的JavaWeb工程部署到Tomcat的webapps目录下
- Eclipse 中如何快速部署项目到Tomcat下
- 如何把一个j2ee web工程在eclipse中用tomcat部署到webapp中
- 如何让Eclipse自动部署项目到Tomcat的webapps下
- 如何用Eclipse+tomcat部署一个网站
- [常用知识]如何在Eclipse、myEclipse中分别配置Tomcat和JBoss应用服务器
- 详细的图文教程来实现 eclipse环境下如何配置tomcat,并且把项目部署到Tomcat服务器上