远程调试,需要本程序和服务器上的程序源码是相同的,这我们服务器使用的是tomcat7。在本地通过MyEclipse 10来调试服务器上的代码,需要本地能访问到服务器,我的服务器是在linux下。
1、对服务器上的tomcat7 bin目录下的 catalina.sh 文件进行修改
# Uncomment the following line to make the umask available when using the # org.apache.catalina.security.SecurityListener #JAVA_OPTS="$JAVA_OPTS -Dorg.apache.catalina.security.SecurityListener.UMASK=`umask` # 在这三行注释下添加如下代码 JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=‘8000‘"
如果服务器做过优化,有如下代码需要注释掉
#JAVA_OPTS="$JAVA_OPTS -server -Xms2g -Xmx2g -Xmn1g -XX:PermSize=256M -XX:MaxPermSize=256m -XX:+DisableExplicitGC -Xloggc:/app/logs/gclog/gc_tomcat.log -XX:+PrintGC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/app/apache-tomcat-7.0.41/heapdump"
然后重启服务器。
2、对本地项目的一些配置
在 MyEclipse 10中项目上点击右键出现如下界面
在Remote Java Application 点击new然后进行如下配置
配置ip和端口号,端口号要和之前修改配置文件中的端口号一致。然后点击Debug 运行,出现如下界面表示成功
之后就可以在需要调试的地方打断点进行调试了。唯一的区别就是本地的控制台不会显示任何日志信息
ps:失败提示提示如下
参看文档:
http://www.ibm.com/developerworks/cn/opensource/os-eclipse-javadebug/index.html
时间: 2024-10-05 01:22:34