java进行debug的几个小技巧

关于debug,在很早之前看过一篇不错的文章(http://iamzhongyong.iteye.com/blog/1397374 ),转载了一下,

最近做项目,有些已经忘记了,整理几个技巧在这里。

但是,建议大家少做debug,debug是很耗时的操作。。。

 

1、远程debug(这个大家基本都会)

就是本机的eclipse来debug远程的java进程,需要两个步骤。

第一个:java进程启动的时候,加入可以debug的参数

(-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=$DEBUG_PORT,server=y,suspend=n);

第二个:eclipse中新建一个remote java applicaiton,添加host和端口即可

 

2、远程启动时debug

有时候,是java进程启动的时候出现的问题,需要在启动时就开始debug,这时候咋搞呢?

java进程中有个参数,suspend=n  把n改成y,这时候,服务器会等待外部连接debug端口,连上了之后再进行JVM的启动操作

 

3、抛出异常时进行debug

顾名思义,就是在抛出异常的时候来断点,这个对于排查异常抛出的时候很有帮助。

在breakpoint视图,有个“J”这样的图标,选择这个,输入异常的类型,就可以开搞了

 

4、指定参数进行debug

尤其是for循环的时候,只有在特定的参数下才会处错误,如果逐个过滤过去,那其实是很费事的一件事情,所以有个办法,就是对于断点加条件

选择断点--然后选择属性--选择条件--开始写条件即可

 

5、运行的时候,怎么动态写代码

在debug的过程中,有时候有些逻辑没有,如果新加,这个断点可能就过去了,

或者服务器端还要重新部署,所以有临时写代码的需求,

这时候,可以打开"display"视图,在里面写代码,直接运行即可

 

有了这几个技巧,在debug的时候,效率会高很多。

 

 

猜你喜欢

转载自iamzhongyong.iteye.com/blog/1924695