IDEA搭建JDK源码阅读环境

前言

JDK源码阅读是一个慢慢积累的过程,俗话说好脑袋不如烂笔头,所以当我们着手阅读源码的时候一定要做好笔记,不然过一段时间再次复习之前读过的源码也会一脸懵逼,感觉如此的陌生。
那么笔记如何打呢?当然是搭建一套源码阅读环境,边读边写注释,下面就给大家介绍一下如何通过IDEA去搭建一套JDK源码阅读环境。

搭建步骤

1.找到JDK源码的压缩包并解压

找到JDK的安装路径,例如我的安装路径是C:\Program Files\Java\jdk1.8.0_91,在该安装路径下有src.zip,这个就是jdk源码的压缩包,把这个压缩包进行解压。

1587455562(1).png

2.IDEA新建java工程

具体流程:File -> new -> project -> java


image.png

然后在工程里新建一个test包,与src平级,方便后期调试JDK源码。下面就是我创建好的一个jdk源码学习工程

3.源码加入工程中

将我们第一步解压的源码复制到新建的java工程中(这里可以直接找到java工程src所在的位置,把源码直接复制进去),如下所示


image.png

此时刷新工程,就会出现如下的工程结构


image.png

4.调试

1).解决找不到sun.awt.UNIXToolkit和sun.font.FontConfigManager的问题

在新建的test包下随便新建一个test类,在里面随便写一段测试代码并运行,就会发现刚才复制进去的JDK源码开始进行编译了。这时候会报以下错误

image.png

这时候我们在项目中新建sun.awt包和sun.font包,然后分别新建UNIXToolkit.java和FontConfigManager.java两个类,类里的内容可以到openJDK官网去找。
选择源码对应的jdk版本
image.png

image.png

image.png

image.png

image.png

从classes里面找到我们缺少的.java文件复制到源码包里即可
image.png

2).解决com.sun.tools.javac.api不存在的问题
image.png

File -> Project Strucure -> Libraries ->把jdk安装路径下的lib添加进去。


image.png

image.png
3).解决OOM问题
image.png

依次点击File–>Settings–>Build,Execution,Deployment–>Compiler
堆大小可由原来的700改为1700


image.png

5.添加注释

此时我们的源码工程编译应该都没问题了,但是当我们去给源码写备注的时候,提示我们readOnly,这是因为我们的项目还是关联的src.zip
image.png

这时候我们可以新建一个SDK,然后把新的SDK中Sourcepath关联的src.zip去掉,换上我们创建的项目的src路径


image.png

这时候就可以愉快的在源码中写备注了
image.png

注意:

这种添加注释的方式不要改变原来代码的行号,不然会导致source code not match the bytecode

你可能感兴趣的:(IDEA搭建JDK源码阅读环境)