eclipse如何debug调试jdk源码

java是一门开源的程序设计语言,喜欢研究源码的java开发者总会忍不住debug一下jdk源码。虽然官方的jdk自带了源码包src.zip,然而在debug时查看变量却十分麻烦。例如调试HashMap的 public V put(K key, V value) 方法并查看key的值时会提示:

eclipse如何debug调试jdk源码_第1张图片

eclipse如何debug调试jdk源码_第2张图片

可以看到不能显示变量的值了,原因在于oracle提供的jre中rt.jar不带debug信息:orcale在编译src时使用了 javac -g:none,意思是不带任何调试信息,这样可以减小rt.jar的大小。若想正常调试jdk,就只能重新编译src.zip。这里介绍下编译src.zip的方法。

  1. 在eclipse中新建一个java项目“jdk”,然后在src目录上导入"Archive File",选择源码src.zip导入,导完目录结构如下(不用管编译报错):

    eclipse如何debug调试jdk源码_第3张图片

  2. 右键项目export...,然后导出为jar包,起名为rt_debug.jar:

    eclipse如何debug调试jdk源码_第4张图片

    eclipse如何debug调试jdk源码_第5张图片

  3. 修改eclipse的jre设置,将rt_debug.jar添加到jre中,并移动到最前面:

    eclipse如何debug调试jdk源码_第6张图片

  4. 最后再查看debug变量,可以看到变量值了:

    eclipse如何debug调试jdk源码_第7张图片

    eclipse如何debug调试jdk源码_第8张图片


你可能感兴趣的:(eclipse,调试jdk源码)