tomacat本地debug

http://zhaoyangjava.blog.163.com/blog/static/8743972520104710543741/

在加装了Tomcat插件的Eclipse中可以设置用Debug模式启动Tomcat,此时Tomcat以及Web应用中的日志都以最详细的级别输出。

但如果直接从命令行用“starup.sh”启动,则只有INFO和更高级别的日志被输出,其他的都过滤掉了。

怎样才能在命令行里以Debug模式启动Tomcat?


你可以用配置Tomcat支持remote debugging
即tomcat通过某个端口通讯来远程调试,而不需要在eclipse中启动

给JVM加上如下的启动参数:
-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

可进一步查tomcat文档或baidu:Tomcat remote debug


打开Tomcat 5.0\conf\Catalina\localhost
路径下的工程配置xml文件
---------------
<Context path="/admin" docBase="E:\project1\practice\practice"
        debug="0" privileged="true">

</Context>
------------------------
其中debug属性 与这个Engine关联的Logger记录的调试信息的详细程度。数字越大,输出越详细。如果没有指定,缺省为0。

tomcat debug参数
关键字: debug
一般调试一个web项目的java代码时,需要将你的tomcat服务器和你的开发工具(比如Jbuilder)集成,或需要工具的一些插件支持(比如Eclipse下的myclipse等),这些方式都是在本地进行,即你的开发工具和tomcat运行在同一台服务器上,如果你的开发工具和服务器不再一台机器上那就需要实现远程调试功能了。

实现方法:在tomcat的catalina.bat文件中加入下面的设置,当然SET CATALINA_OPTS 变量应该在使用它之前。这是在tomcat启动时设置一些虚拟机参数,使服务器允许远程连接功能,address=5888表示远程连接的端口号,可以设置成任意其他不冲突端口。其他的应用服务器比如weblogic也应该可以设置这些参数,有兴趣的可以测试。

SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5888 这样就Ok了,重启动tomcat,可以直接独立启动,而不用在eclipes的插件中启动。打开eclipse中的debug设置窗口,选择Remote Java Application ,新建一个debug项,输入服务器IP和刚才设置端口号,点ok就可以进入debug状态了。Jbuilder中同样可以设置Remote Java Application


1>编辑bat文件

set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket
cd D:\apache-tomcat-6.0.13\bin
catalina jpda start

2>保存文件为bat格式,复制到tomcat的bin目录下。
3>双击此文件启动tomcat。
此时的tomcat启动为debug模式

猜你喜欢

转载自shineman123.iteye.com/blog/1160074