idea查看jdk源码并在源码中写注释

一、概要

想要查看jdk源码并希望能够写一些注释。以下是一些概要的步骤,以及会遇到的一些问题。

  • 新建一个项目,并将jdk安装目录下的src压缩包解压到项目下并替换原来的src。
  • 需要让debug时自动关联到项目的src中的源码。
  • 运行一个demo,看是否能运行成功。在此期间会遇到如下问题:
    • 程序包com.sun.tools.javac.api不存在
    • 找不到sun.awt.UNIXToolkit
    • 找不到sun.font.FontConfigManager
    • OutOfMemoryError:insufficient memory(系统资源不足)

二、具体操作以及问题的解决

2.1创建一个Java项目jdk1.8-source-study

idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释

2.2 将jdk安装目录下的src.zip复制到当前jdk1.8-source-study解压并替换原来的src

idea查看jdk源码并在源码中写注释

idea查看jdk源码并在源码中写注释
这时再看idea
idea查看jdk源码并在源码中写注释

2.3 将原来关联的jdk安装目录下的源码src.zip替换成jdk1.8-source-study的src

idea查看jdk源码并在源码中写注释
为了避免修改原来的SDKs,另外再添加一个。
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释

建一个Test类测试下,当然第一次运行时可能会很慢。
idea查看jdk源码并在源码中写注释

2.4 解决出现的程序包com.sun.tools.javac.api不存在这个问题。

此时你可能会出现一些问题
idea查看jdk源码并在源码中写注释

idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
点击ok后就可以了。这时就解决了Error:(40, 31) java: 程序包com.sun.tools.javac.api不存在这个问题。

2.5 解决 sun.awt.UNIXToolkit和sun.font.FontConfigManager找不到问题。

idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
对于缺少的两个类,我们可以去OpenJDK寻找

idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
在awt和font下可以找到这两个类。
idea查看jdk源码并在源码中写注释

2.6 解决OutOfMemoryError:insufficient memory(系统资源不足)

idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
idea查看jdk源码并在源码中写注释
再次运行Test,发现成功了

调试下ArrayList
idea查看jdk源码并在源码中写注释
发现可以添加注释了。
idea查看jdk源码并在源码中写注释

参考链接:
https://blog.csdn.net/u010999809/article/details/101922489
https://www.dazhuanlan.com/2020/02/02/5e36366401323/