6

嗨,我将在 Java 中进行更多研究,所以我想看看程序是如何在核心类中执行的。例如,我想知道String.chatAt()是如何实现的,所以我设置了断点并尝试进入调试模式。但是我失败了,我在第二行设置了 bp 程序命中它,我用 step into 它仍然继续到第三行。

String a = "1231231241241";
char b = a.charAt(0);
System.out.println(b);

我认为它应该进入源并显示“找不到源”,然后给我一个附加源文件的机会,对吗?但是为什么进不去呢?我只能使用ctrl+right单击方法进入源并附加。

4

5 回答 5

5

可能是您的 Eclipse 未设置为使用 JDK 运行,它可能改为使用 JRE 运行。
检查此链接
另外,我可能会建议您尝试使用Maven来管理您的 Java 项目,当您掌握它时,它会让生活变得更加轻松。

于 2012-10-05T08:10:41.440 回答
5

很可能,您已激活“分步过滤”功能。

调试时,当调试器进入您并不真正感兴趣的内部结构的琐碎类时,有时会有点烦人。因此,您可以配置“步骤过滤器”。作为步骤过滤器添加的类或包将被“Step into”操作忽略。

如果你想配置哪些类/包应该包含在步骤过滤器中,你可以去:
Window --> Preferences --> Java --> Debug --> Step Filtering
我的猜测是你在java.*那里定义了一个包过滤器,这意味着调试器将永远不会进入一个包中以开头的任何类“爪哇”。如果您希望能够进入,请取消选中此包过滤器java.lang.String

或者,如果您想完全激活/停用步进过滤,您可以通过单击Use step filtering 调试视图中的按钮来执行此操作,如下所示:

切换步骤过滤

于 2012-10-05T13:31:52.273 回答
2

为了能够查看您在项目中使用的库代码,您应该通过附加源代码和 JavaDoc 来配置构建路径。

源查找

于 2012-10-05T08:12:46.183 回答
0

好像您没有设置“源附件”。转到首选项 -> Java -> 已安装的 JRE。选择您使用的 JRE 并单击“编辑”,然后通过选择 jar 并单击“源附件”将源附件设置为 jdk 附带的 src.zip :)。您可以通过 shift-click 选择它们同时对所有 jar 执行此操作。

于 2012-10-05T08:26:30.123 回答
0

例如,在这段System.out.println("test")代码中,如果您想进入 System 类,只需单击 System 并单击 F3,如果您尚未附加源代码,您将被重定向到附加源代码。只需附上jdk的src文件夹

于 2014-05-28T18:10:27.800 回答