1如何debug调试jdk源码
无法进入源码,大多数是line unavailable,需要设置。
【Window】-【Preference】-【Java】-【Installed JREs】
这里可以看到Eclipse可以使用的Java环境,默认使用的是JRE(Java Runtime Environment),是不支持调试的,需要替换成JDK(Java Development Kit)。
【Add】-【Next】-【Add JRE】
在【DIrectory】选择机器上安装的JDK的目录,不是JRE的目录。此时JDK的jar文件都会默认选择JDK目录下的src.zip作为source,如果没有,自行手动设置。
然后,选择使用JDK。
然后,在项目的【Build Path】里使用刚刚添加的JDK,去除默认的JRE引用。
结束,现在可以在debug中调试jdk源码了。
2.如何在debug调试时显示局部变量
原因在于oracle提供的jre中rt.jar不带debug信息:orcale在编译src时使用了 javac -g:none,意思是不带任何调试信息,这样可以减小rt.jar的大小。若想正常调试jdk,就只能重新编译src.zip。这里介绍下编译src.zip的方法。