如何debug jdk源码中的变量

来源:互联网 发布:mac apache 虚拟主机 编辑:程序博客网 时间:2024/06/06 03:22

今天Debug代码,跟踪到jdk里源码时,只能看到变量,却无法查到变量的值。怎么办呢?

1. 下载使用带有debug信息的JDK。

下载地址:http://download.java.net/jdk6/ 。当前最新版本为Standard Edition 6u25 Binary Snapshot Releases。

下载安装后,在eclipse添加新的JRE。

image

image

2. 自己动手重新编译JDK

上面的方法很简单,但是官网上一般只给出最新版本的Debug版,如果要Debug用某个特殊版本怎么办呢?自己编译嘛!前人也给出了很多思路。

1. Enabling debugging inside JRE classes

http://www.javalobby.org/java/forums/t103334.html

介绍了GNU utilities for Win32工具。

2. General: Recompile (Some of) The JDK to Ease Debugging

http://www.java.net/external?url=http://www.javalobby.org/java/forums/t19866.html

这篇文章用的是 bat 脚本。

3. Should Sun build rt.jar with debug information enabled?

http://www.javalobby.org/forums/thread.jspa?messageID=91825915#91825965

这篇直接给出了Ant脚本。

4. 建一个Java工程,利用Eclipse等IDE工具进行编译。

四种方法都试了一下,还是觉得写Ant脚本最简单。不管用哪种方法,打好包后可以通过 Xbootclasspath/p:<the archive you just have created> 参数来优先加载我们的rt_debug.jar。

如果要在Eclipse中调试,需要在原来的JRE上加上我们新的rt_debug.jar。

image

注意rt_debug.jar要在原来的rt.jar 之前。

image


原创粉丝点击