Eclipse远程调试Web应用

标签: eclipse 调试 web | 发表时间:2012-04-29 21:21 | 作者:
出处:http://www.iteye.com

        最近需要在原来的一个项目增加新的功能,把项目下下来后,发现项目超大,在Eclipse启动要不内存溢出,要不解析请求非常慢,无赖之下想到Eclipse远程调试.所谓Eclipse远程调试,就是源代码在Eclipse下,而应用程序通过本机和远程机器启动,Eclipse通过socket与应用进行通信,从而达到和本地一样效果的调试的目的.当然这种调试只适用于远程和Eclipse下的源代码相同的情况,如果Eclipse下的源代码经常变动的话,就显得很不方便.闲话少说,现在来看怎么配置远程调试.

一,配置web服务器
对于tomcat:
   在windows系统下 
   修改%CATALINE_HOME%/bin/catalina.bat,加入下面这行: 
   set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -   Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8787  

   其中address=8787是没被使用的端口号。连接方式有两种,为dt_shmem和dt_socket,分别表示本机调试和远程调试。

    在非windows系统中: 
       需要把% CATALINE_HOME %/bin/startup.sh中的最后一行exec "$PRGDIR"/"$EXECUTABLE" start "$@" 中的start改成jpda start。由于默认的端口是8000,所以如果8000端口已有他用的话,还需在catalina.sh文件中设置:JPDA_ADDRESS=8787。
输入命令startup.sh或者catalina.sh jpda start就可启动tomcat。

对于jboss: 
    在windows系统下 
     修改$JBoss\jboss-4.0.4\bin\run.bat
set JAVA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n %JAVA_OPTS%  

   

    在非windows系统下

    修改 $JBoss\jboss-4.0.4\bin\run.conf 文件,加入

    JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"

二.配置Eclipse

      在Eclipse中,选择要调试的项目, 右键"debug as->debug configuration ..";在出现的对话框中,选择“Remote Java Application” ,右键单击,在弹出的菜单中选择“New”,在出现的对话框中的“host”中输入Jboss服务器的 ip(本机则输入localhost或127.0.0.1),在“port”中输入调试的端口号(8787 ),选择“debug”开始调试;

剩下的步骤和在Eclipse下调试eclipse启动的项目相同

三.如果使用以上的配置后,Eclipse连接远程应用被拒绝,很可能是Eclipse使用代理造成的

    解决办法:

    Eclipse下选择window->Preferences->network connections,active provider中选择direct而不要选择manual,保存即可

 

 

 

 



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [eclipse 调试 web] 推荐:

Eclipse远程调试Web应用

- - ITeye博客
   在windows系统下 .    修改%CATALINE_HOME%/bin/catalina.bat,加入下面这行: .    其中address=8787是没被使用的端口号. 连接方式有两种,为dt_shmem和dt_socket,分别表示本机调试和远程调试.     在非windows系统中: .

eclipse远程调试tomcat运行的web项目--配置

- - ITeye博客
eclipse远程调试tomcat运行的web项目. 从"远程"可以看出, tomcat运行的web项目不在本机,而且正在跑;. 比如用户说,系统出问题了, 打电话叫你解决一下. A:查看日志:这时一大堆日志, 你不愿意查找, 这时远程调试就可以清楚哪里出错了. B:远程调试:你可以知道传入对象的每个一个属性以及调用的方法等等更为详细的信息.

[原]Eclipse远程调试Spark

- - Soul Joy's Home
修改${spark_home}/bin/spark-class文件:. -Xdebug 启用调试特性. -Xrunjdwp 启用JDWP实现,包含若干子选项:. transport=dt_socket JPDA front-end和back-end之间的传输方法. dt_socket表示使用套接字传输.

eclipse如何导入myeclipse的web项目

- - 开源软件 - ITeye博客
1、进入项目目录,找到.project文件,打开. 2、找到...代码段. 3、在第2步的代码段中加入如下标签内容并保存:. 4、项目目录下的.classpath文件,把所有Webroot字符串改为WebContent,保存. 5、把目录下webroot的文件夹改名为WebContent.

通过eclipse调试MapReduce任务

- - 淘宝网通用产品团队博客
利用MapReduce利器作开发,不论从思想上还是技能上都是新的体验. 以下罗列下如何利用eclipse调试MR任务. (本人环境: hadoop 1.0.2,部署在linux上,本地windows开发). 先在linux上安装好hadoop,为更接近线上环进,我的是 安装成Cluster.

Eclipse调试多线程代码

- - CSDN博客编程语言推荐文章
相信到现在为止,不管是什么编程语言,程序员都使用了IDE,IDE简化了程序员的开发过程. IDE能够管理项目,自动生成代码,自动生成文档,以及调试应用程序. 默认情况下,在调试多线程程序时,当遇到断点时(breakpoint),当前线程暂停,而其它线程继续运行,这是我们不想要看到的. 除第21个线程以外,其余都是Running状态.

用Python+Django在Eclipse环境下开发web网站 - Ruthless

- - 博客园_Ruthless
如果这是你第一次使用Django,那么你必须进行一些初始设置. 也就是通过自动生成代码来建立一个Django项目--一个Django项目的设置集,包含了数据库配置、Django详细选项设置和应用特性配置,具体操作步骤如下所示. 1.新建Django项目. 3.测试新建的模块是否正常. 服务器启动起来后,去浏览器输入网址:http://127.0.0.1:8000,你会看到一个令人愉悦的,柔和的淡蓝色 “Welcome to Django” 页面.

Eclipse使用Maven构建web项目详解

- - 行业应用 - ITeye博客
Maven无论在标准化项目结构,还是在jar的依赖管理上等,好处都是非常突出的. 但是使用也有些门槛,本文详细讲解了Eclipse构建Maven web项目的方法. 转自: http://www.devnote.cn/article/148.html. 测试于:m2e 1.4.0, Maven 3.0.5, Eclipse Indigo.

Hadoop学习笔记之在Eclipse中远程调试Hadoop

- - BlogJava-首页技术区
话说Hadoop 1.0.2/src/contrib/eclipse-plugin只有插件的源代码,这里给出一个我打包好的对应的Eclipse插件:. 下载后扔到eclipse/dropins目录下即可,当然eclipse/plugins也是可以的,前者更为轻便,推荐;重启Eclipse,即可在透视图(Perspective)中看到Map/Reduce.