调试JDK源码时可编辑操作的实现

目录

  • 一、解压源码压缩包
  • 二、创建Java项目
  • 三、复制源码文件到文件夹
  • 四、Platform Settings中新增一个SDK
  • 五、修改新建SDK的 Sourcepath 配置
  • 六、修改 Project 以及 Modules 的 SDK
  • 七、项目结构图
  • 八、测试调试过程中对源码进入注释

以下操作在以下环境中测试通过:idea 2019.3,jdk8源码包

一、解压源码压缩包

从jdk安装目录中找到 src.zip 的源码压缩包,解压后得到源码文件夹

二、创建Java项目

因主要目的是调试源码,了解其功能的实现过程,所以在IDEA中创建一个java项目(单独的一个项目,而不是Module),在 src 文件夹下分别创建两个文件夹(文件夹名自定义)resourcetest

  • resource:存储需要进行调试的源码文件
  • test:测试类所在文件夹

三、复制源码文件到文件夹

将需要调试的源码类所在包复制或移动到所创建项目的 resource 目录中

因为将全部的源码文件夹放到项目的 resource 目录中,运行程序时在构建程序阶段会报错,且构建时间过长(最终构建失败,程序结束),极大的浪费计算机内存以及CPU资源,所以强烈建议仅将需要调试的类所在包放到目录中

比如想调试HashMap类,就将 java.util 包放到 resource 目录中

报错情况:

四、Platform Settings中新增一个SDK

避免出现在源码中增加注释时不小心对源码进行了改动(而idea又是自动保存的),所以区别于其他项目,在 Project Structure -> Platfrom Settings -> SDKs新增一个SDK,专门用于jdk源码调试的项目中

五、修改新建SDK的 Sourcepath 配置

源码文件路径指向到步骤3中保存源码文件的 resource 目录中

修改后(将原有的两项移除):

六、修改 Project 以及 Modules 的 SDK

  1. Project Settings -> Project 中为项目更换SDK

  2. Project Settings -> Modules 中为Module更换SDK

七、项目结构图

resource目录中具体放哪些源码文件可自行选择

八、测试调试过程中对源码进入注释

修改完设置后一定要Apply,保存设置,否则修改不生效

调试源码过程中,如需增加注释,尽量不要改变原有行数,加注释在源码后加

JDK源码包的学习步骤推荐(java包下):long,util,io,nio,time,math,net

原文地址:https://www.cnblogs.com/zhiyin1209/p/12579541.html

时间: 2024-08-03 17:38:45

调试JDK源码时可编辑操作的实现的相关文章

设置Eclipse可以Debug模式调试JDK源码,并显示局部变量的1

最近突然萌发了研究JDK源码的想法,所以就想到了在自己常用的Eclipse上可以调试JDK源码. 整个设置过程也很简单: 首先你要安装好JDK(我的JDK安装路径根目录是D:\Java\jdk-8u92-windows-x64),JDK安装路径里有个"src.zip"就是JDK的源码文件压缩包: 设置好环境变量的JAVA_HOME变量和PATH变量(JAVA_HOME变量值也是D:\Java\jdk-8u92-windows-x64). 然后打开Eclipse设置可以Debug模式调试

设置Eclipse可以Debug模式调试JDK源码,并显示局部变量的值

最近突然萌发了研究JDK源码的想法,所以就想到了在自己常用的Eclipse上可以调试JDK源码. 整个设置过程也很简单: 首先你要安装好JDK(我的JDK安装路径根目录是D:\Java\jdk-8u92-windows-x64),JDK安装路径里有个"src.zip"就是JDK的源码文件压缩包: 设置好环境变量的JAVA_HOME变量和PATH变量(JAVA_HOME变量值也是D:\Java\jdk-8u92-windows-x64). 然后打开Eclipse设置可以Debug模式调试

JDK源码重新编译——支持eclipse调试JDK源码--转载

最近在研究jdk源码,发现debug时无法查看源码里的变量值. 因为sun提供的jdk并不能查看运行中的局部变量,需要重新编译一下rt.jar. 下面这六步是编译jdk的具体步骤: Step 1:  Locate the JDK source First navigate to the JDK install directory, and locate the src.zip file. This file contains the JDK sources – and is absolutely

eclipse如何debug调试jdk源码

java是一门开源的程序设计语言,喜欢研究源码的java开发者总会忍不住debug一下jdk源码.虽然官方的jdk自带了源码包src.zip,然而在debug时查看变量却十分麻烦.例如调试HashMap的 public V put(K key, V value) 方法并查看key的值时会提示: 可以看到不能显示变量的值了,原因在于oracle提供的jre中rt.jar不带debug信息:orcale在编译src时使用了 javac -g:none,意思是不带任何调试信息,这样可以减小rt.jar

解决debug到jdk源码时不能查看变量值的问题

目录 如何跟踪jdk源码 1. 编译源码 2. 关联源码 3. 大功告成 如何跟踪jdk源码 看到这个标题大概大家都会在心里想谁还跟踪个源码呀,在eclipse中打个断点,以debug的方式运行,然后F5进入方法,F6跳过方法,F7跳出方法.但是不知道大家有没有注意到,如果你跟踪到的是jdk源码的话,比如HashMap的put方法,即使你F5进入到这个方法的内部了,你也看不到你put的 key 和 value 的实际值.但是我们既然要跟踪源码,那么肯定要看到我们设置的 key 和 value 是

eclipse无法断点调试JDK源码的问题

最近换了新版的eclipse,在jdk源码里面,打断点发现无法进入源码调试,程序直接跳过,已查资料发现自己eclipse配置的是jre环境的. 此处要配成jdk目录才有效 打开preferences,点击java ,在点击installed JRES 选中jre的目录,我这里只有一个,是我jdk的安装目录, 将JRE home配置成jdk的目录, 点击Restore Default就可以调试了. 这里简单说下jre和jdk的区别. JRE: Java Runtime Environment JD

JDK源码调试

1.首先遇到了一个问题line unavailable,然后通过以下方式解决: http://blog.csdn.net/xuefeng0707/article/details/8738869 对于想了解JDK源码的同学来说,通过调试JDK源码来学习是一个常用的方法. 如果调试时,不能进入JDK源码,大部分错误都是line unavailable,则需要设置一番. [Window]-[Preference]-[Java]-[Installed JREs] 这里可以看到Eclipse可以使用的Ja

jdk源码调试功能

JDK源码重新编译——支持eclipse调试JDK源码--转载 最近在研究jdk源码,发现debug时无法查看源码里的变量值. 因为sun提供的jdk并不能查看运行中的局部变量,需要重新编译一下rt.jar. 下面这六步是编译jdk的具体步骤: Step 1:  Locate the JDK source First navigate to the JDK install directory, and locate the src.zip file. This file contains the

重新编译jdk源码,启用debug信息

我有一个不知道是好还是不好的习惯,搞不懂的一些玩意儿,喜欢调试然后单步执行看这玩意儿到底是怎么运行的. 今天看到正则表达式的时候,appendReplacement()这个方法怎么也看不明白它是怎么工作的,于是想调试源码单步执行,然后watch几个关键的变量看看. 刚开始的时候,eclipse里调试模,单步,发现没有办法进入方法内. 用google百度了一下,发现是JRE配置的问题. 使用jre是不可以的,需要使用jdk的环境.(之前真的没有注意到这一点) 于是window->Preferenc