jdk学习之如何调试jdk

 

 

       自从sun被oracle收购后,在oracle下载的jdk使用F5进入调试jdk的方法就不行了,这对于想看jdk的源码的小伙伴是一个暴击(oracle在编译rt.jar时去除了调试信息);

这不得不鼻屎oracle违背了java开源的初衷,虽然oracle去除了rt.jar的调试信息,我们还是可以下载带调试信息的rt.jar去替换,

当然我们自己也可以生成带调试信息的rt.jar,以下是生成步骤及使用方法;

  1、在c盘创建目录  C:\aiqing\tools\debugjdk\rt_debug;(这里在哪个盘符创建目录及目录名是什么没限制,要与下面的步骤对应就ok)

  2、把JAVA_HOME\jre\lib下的rt.jar复制到rt_debug目录解压;

  

  3、把JAVA_HOME\src.zip复制到rt_debug目录解压(src.zip就是jdk的源码)

  4、进入解压后的src目录,保留java、javax、org三个目录,其他删除

  5、在src目录中打开cmd命令行执行dir /B /S /X  C:\aiqing\tools\debugjdk\rt_debug\src\*.java > filelist.txt (这一步创建一个叫做filelist.txt的文件,这个文件存放了所有你将要编译的类的名称)

  6、创建C:\aiqing\tools\debugjdk\debug_rt\classes文件夹 (java、Javax、org三个源代码编译后存放路径)

  7、编译src下的源代码 javac -J-Xms16m -J-Xmx1024m -sourcepath C:\aiqing\tools\debugjdk\rt_debug\src -cp C:\aiqing\tools\debugjdk\rt_debug\rt.jar  -d C:\aiqing\tools\debugjdk\debug_rt\classes -g @filelist.txt

  8、cmd进入C:\aiqing\tools\debugjdk\debug_rt\classes目录,执行: jar cf0 rt_debug.jar * ;这步会生成一个rt_debug.jar

  

  9、把这个rt_debug.jar包复制到JAVA_HOME\jre\lib下

  10、把JAVA_HOME加入到eclipse中,eclipse点击window->preferences->Installed JREs,选择相应JDK,然后点击Add External JARs...,选择我们步骤9中添加的rt_debug.jar(位置在rt.jar之上)。

  

  11、链接rt_debug.jar的源码JAVA_HOME\src.zip(rt_debug也是用的src.zip中的jdk源码)

  

  12、ok,接下去就可以在jdk中遨游了。

  

  

 

转载于:https://www.cnblogs.com/shuaiqing/p/7525841.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值