远程debug tomcat

来源:互联网 发布:python 线程同步 编辑:程序博客网 时间:2024/06/08 10:39

如何用eclispe远程调试tomcat


     tomcat是一种非常常见的java web应用服务器,有时候服务器可能并不是部署在本地,而是部署在远程其他的机器上,我们用eclispe该如何进行debug调试呢?下面小编就和大家分享一下解决的办法。


        方法/步骤

       
      1、在eclispe中新建web应用,项目名字叫web。里面只有一个Servlet类,文件名为info.java。Web.xml配置如下。
             

             info.java内容如下,
             

       2、将该项目打成war包,名称为web.war.

       3、将web.war复制到远程服务器上。

       4、更改tomcat远程调试端口
               (1).更改Linux系统上的Tomcat启动文件远程调试端口,登录服务器,找到Tomcat安装路径,进入到bin目录
               (2) 打开目录下的catalina.sh文件,找到JPDA_ADDRESS=”8000”,8000代表远程调试端口,可以更改成其他没有被占用的端口,更改完成                       后保存退出。(不改默认端口为8000)

        5、以debug模式启动Tomcat
             (1)进入tomcat的bin目录,输入./catalina.sh jpda run或者./catalina.sh jpda start命令启动tomcat
             (2)启动如下图,
                 
             
        6、在eclipse中,点击菜单项“run”->“debug confiurations”,打开debug confiurations对话框,在里面双击“Remote              Java Application”,在右边在Host中的输入tomcat的主机名,Port中输入端口号,也就是8000,然后点击“debug”。              当然也可以在name中自定义一个你喜欢的名字。(特别需要注意的是:在做此步骤之前需将该项目部署到本地的tomcat目录            下,但不要启动本地tomcat)
           


         7、在eclipse的info第40行打一个断点,然后打开浏览器,输入http://192.168.125.128:8080/web/info?id=1,然后回车。                就会看到eclipse停在了断点上。
               

        8、通过以上步骤就可以在本地连接到远程服务器上代码,从而进行代码级的测试了。
                
                 

          


附录

远程debug设置                            

1、在远程服务器的tomcat/bin目录下编辑catalina.sh文件,增加以下红色标注的内容:

[ $1 != stop ] && JAVA_OPTS="-server -XX:PermSize=128M -XX:MaxPermSize=256M -Xms1024M -Xmx1024M -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=${tomcat_jmx_port} -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=../shared/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=../shared/conf/jmxremote.access  -Djava.rmi.server.hostname=${tomcat_jmx_ip}-Xdebug -Xrunjdwp:transport=dt_socket,address=9901,server=y,suspend=n"

远程debug端口号被设置为9901,如有重复可以进行修改


2、在本机eclips中进行配置远程JAVA调试应用

 

3、在代码中增加端口,运行远程服务器的程序,遇到断点则会进行调试!









          
  


0 0
原创粉丝点击