在新的公司,由于项目很大,在本机运行会很慢,所以都是在本地开发,在远程虚拟机上运行。这样就让我痛苦了,我怎么在本地Eclipse上进行debug调试呢,但是在公司前辈的指导下让我知道了本地Eclipse一样可以远程debug代码。
首先你本地Eclipse上要有和部署在远程服务器一至的项目,否则debug的时候会出现代码行错位,难以达到debug的效果。例如:如果你本地的代码加了行,修改了,或减了一行。而远程服务器上的项目没有变化,则debug的时候会发现行号不对,或debug出来的值有偏差等。
1.打开Eclipse,点击左上角的debug按钮,如图:
2.点击上图的红色区域
3.双击上图的红色区域
4.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由你自己定的。
5.再一切设置好了后,点击右下角的debug按钮,你就可以像本地debug一样进行远程debug了。
ps:jps(Java Virtual Machine Process Status Tool)是JDK 1.5提供的一个显示当前所有java进程pid的命令,简单实用,非常适合在linux/unix平台上简单察看当前java进程的一些简单情况。