如何在eclipse氧气中调试类文件

时间:2018-04-14 14:18:31

标签: java eclipse eclipse-plugin

很长一段时间以来,我一直在寻找如何用Java调试类文件。

例如: - 考虑下面的代码snipet。

Map map = new HashMap();
map.put("1","A");
map.put("2","B");

现在,如果我想了解put的内部工作,那么它应该重定向我将方法放在HashMap类中。 我在我的日食中安装了反编译器。 我将断点设置为put(),但编译器直到此时才会出现。 它会跳过方法的内部工作,直接指向我定义的下一行。

如果有调试类文件

,请提供帮助

3 个答案:

答案 0 :(得分:1)

要使用断点调试核心/ JDK类的执行,您需要添加这些类的源代码 对于最新版本的Java,在解压缩/安装JDK之后, 您将在JDK文件夹的根目录中找到一个存档,例如Windows JDK的src.zip。

确定此文件后,通过在Eclipse首选项的已安装JRE部分中配置源,使其可在任何Eclipse项目中访问:

  • 选择您正在使用的JRE(通常是JDK)
  • 点击"编辑"
  • 选择所有JRE系统库,然后单击" Source Attachement"
  • 点击"外部文件"选择包含先前下载的源的zip文件。
  • 点击"确定"
  • 使其生效

以下是截取相关信息的屏幕截图:

enter image description here

答案 1 :(得分:0)

除了由davidxxx发布的设置之外当处于调试模式并且执行到达您的调试点时,请记住使用"步入"而不是"跨过"。 "进入"然后会进入.put()方法。

答案 2 :(得分:0)

你不需要一个反编译器,而不是JDK中的类。试图使用一个甚至可能会导致你的问题。通常,您所要做的就是确保您的Installed JREs首选项页面包含JDK,并且您使用它启动Java应用程序,而不是JRE。 JDK的源位置是众所周知的,因此应该自动找到,JDK的.class文件包含调试信息,以便在步进时向调试器公开字段名称和局部变量。

相关问题