如何在Eclipse中进入核心java类方法?

use*_*361 6 java eclipse debugging

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

String a = "1231231241241";
char b = a.charAt(0);
System.out.println(b);
Run Code Online (Sandbox Code Playgroud)

我认为它应该进入源代码并显示"找不到源代码",然后给我一个附加源文件的机会,对吧?但为什么它不能进入​​呢?我只能使用ctrl+right点击方法进入源和附加.

Les*_*ess 5

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


Ald*_*ath 5

最有可能的是,您已激活"步骤过滤"功能.

在调试时,当调试器进入你不感兴趣的内部的普通类时,它有时会有点烦人.因此,你可以配置"步骤过滤器"."步入"操作将忽略作为步骤过滤器添加的类或包.

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

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

切换步骤过滤