当前位置:   article > 正文

Eclipse如何debug_eclipse debug

eclipse debug

目录

1. Eclipse的debug按钮

2. 练习

3.debug视图

        3.1 Debug窗口

        3.2 Variables窗口

        3.3 Breakpoints 窗口


1. 首先介绍下Eclipse的几个debug按钮

  走到下一处断点,如果没有没有下一处断电就直接运行完整个debug流程

     强制停止当前debug ,相当于直接关闭JVM的意思,不会再执行后面的代码了

   进入方法内部

   走到下一行代码(就是直接一行一行的走,不会进入方法内部)

   跳出当前方法,如果当前走到了方法内部,就直接执行完当前方法后调回到调用处

2. 练习

我现在debug一遍spring的源码,先在要debug的代码旁双击打一个断电,然后以debug形式启动,右上角的昆虫图标

这时候我希望进入这个构造方法,看下他的构造器做了什么事情,我就点击这个按钮  (F5) 进入方法内

这时候我发现他跳到了ClassLoader类,ClassLoader是jdk的类加载器负责将.class加载到JVM里,这样我们就可以运行java类了,所以就说明他把上图中的ClassPathXmlApplicationContext类加载到了JVM,知道这个意思就可以了,我们可以直接点击

(F7)跳出当前方法

然后发现他就会调回到调用处,类加载已完成,这时候我们在进入一次(F5) 进入方法内部

这时候就进入真正的方法里,鼠标放上去, 可以看见上图传入的参数

然后发现这个构造器又调用了另一个构造器,再继续按(F5) 进入方法内部

发现他又跳到了ClassLoader类,这个方法就是进行一些安全检查,我们直接按(F7)跳出当前方法回到调用处再按(F5) 进入方法内部 就进入到真正的调用的代码

在这里按 (F6)下一步 就会走到setConfigLocations里,不会进入super()

这个时候我已经知道要调用refresh方法(refresh == true), 我就先进入这个方法,在这里打一个断点

然后回到这个方法,按(F8) 走到下一个断点

就会直接跳到这个方法,后面不演示了直接结束

3.debug视图

3.1 Debug窗口

这里每一行代表的方法调用的行数

比如我点击第一行,就代表当前debug到哪的地方

点击第二行代表  调用第一行的地方,以此类推

3.2 Variables窗口

这个窗口存储了当前debug行的所有变量的值

this就代表当前对象

configurationLocation点开就可以看到他的属性

3.3 Breakpoints 窗口

当前窗口存储了所有打过的断点,双击就可以到这个断点的位置,点击上面的可以移除所有断点

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/503154
推荐阅读
相关标签
  

闽ICP备14008679号