`
dacoolbaby
  • 浏览: 1254359 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Eclipse远程调试Java代码

    博客分类:
  • Java
阅读更多

有时候本地断点调试不能完全反映出生产环节的异常:

比如服务之间的依赖,等等。

 

所以,远程断点调试给予了解决集成环境BUG的一个非常有利的工具。

 

在Eclipse下面,做如下工作:

打开Eclipse,点击左上角的debug按钮,如图:

 

 

 

Project:选择你要debug的项目,Host:输入你的远程IP,Port:远程调用端口。

如何知道远程端口,通过进入你的远程虚拟机的命令行,输入jps -v 命令,查找这一行 
-Xrunjdwp:transport=dt_socket,server=y,address=52002,suspend=n 

 

其中52002就是你远程虚拟机的调用接口。

如果找不到,那是因为你的远程虚拟机tomacat或jboss配置没有支持remote debugging,需要在给JVM加上如下的启动参数: 
-Xdebug -Xrunjdwp:transport=dt_socket,address=52002,server=y,suspend=n 
adderss由你自己定的。

 

下面,我们就在Tomcat的环境上,进行远程调试的配置:

方法一: 修改配置文件catalina.bat , startup.bat

1. 在环境变量中添加 jpda_address=8000, 也可以加到startup.bat 文件

@echo off下面如:set "JPDA_ADDRESS=8000"

2. 打开catalina.bat,在文件中找到" set JPDA_TRANSPORT",把它的值设为dt_socket

3. 打开startup.bat, 在文件中找到"call "%EXECUTABLE%" start %CMD_LINE_ARGS%",

改为" call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%",

也就是在start前加jpda.

4. 在eclipse debug中选择" Remote Java Application" ,新建一个批port为jpda_address的值,

 

方法二: 通过GUI的"Configure Tomcat ".

b) Select the Java tab

c) Into the Java Options include (substituting the correct locations)

-Xdebug

-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

-Dcatalina.home=c:\tomcat

-Djava.endorsed.dirs=c:\tomcat\common\endorsed

-Djava.io.tmpdir=c:\tomcat

NB: These are all on separate lines, with a <CR> at each EOL

d) Select the Startup tab

e) Into the Arguments section include:

jpda

start

NB: These are all on separate lines, with a <CR> at each EOL

其中要注意<CR>

 

附件会包含我修改Tomcat的所有配置文件

  • 大小: 89.6 KB
分享到:
评论
2 楼 dacoolbaby 2015-04-23  
南京玄武 写道
楼主,求指教!!!T_T
QQ:597989975
配置的远程调试怎么一运行就报错呢:
failed to connect to remote vm connection timed out
Tomcat catalina.bat 的配置如下:
set JAVA_OPTS=-XX:MaxPermSize=2048m -Xms2048m -Xmx2048m -XX:MaxNewSize=2048m

set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=52120

百度过了也Google过了,但还是么有解决啊。。。T_T


这个估计是端口的问题,比如说防火墙把端口给拦截了,或者端口被占用了。
先看看端口通不通。
1 楼 南京玄武 2015-04-15  
楼主,求指教!!!T_T
QQ:597989975
配置的远程调试怎么一运行就报错呢:
failed to connect to remote vm connection timed out
Tomcat catalina.bat 的配置如下:
set JAVA_OPTS=-XX:MaxPermSize=2048m -Xms2048m -Xmx2048m -XX:MaxNewSize=2048m

set CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=52120

百度过了也Google过了,但还是么有解决啊。。。T_T

相关推荐

Global site tag (gtag.js) - Google Analytics