在IDEA搭建JDK8源码运行环境
源码的代码里会有很多的引用,我们只是单纯的用文本阅读,效率和体验都很不好,也不能使用debug
功能查看每一步的代码执行效果,所以就需要借助idea
编辑器工具,可以使用快捷键跳转到引用的类和方法,还可以debug
运行。
idea
不能直接运行JDK8
源码,我们需要自己搭建一套可以运行的环境。如何搭建,请看下文!!!
首先我们需要下载JDK8,如果没有JDK8,请看JDK8下载,如果有,请移步到运行环境搭建。
JDK8下载
进入Oracle官网下载,根据自己的操作系统下载对应的版本
现在Oracle官网下载需要登录后才可以下载,不要修改密码!!!
以下账号由 withLevi 和 梦想音乐人生 两位大佬提供
账号:1985479344@qq.com
密码:Oracle123
账号:1826027673@qq.com
密码:Wsm13479641769.
下载安装,并找到安装目录下的src.zip
压缩包,进行解压
IDEA运行环境搭建
-
新建项目,选择你安装的
JDK
版本,新建两个包source
(存放JDK源码)和test
(存放测试用例)
-
将上面解压后的
src.zip
的src
目录下的文件夹都复制到source
文件夹下
-
编写用例前,
idea
需要进行如下设置
为了防止系统资源不足的问题,设置堆内存大小,大小自定义
因为JDK
源码是受保护的,所以我们debug
单点调试step into
无法进入源码内部,但force step into
强制进入是可以的,如果想step into(F7)
进入源码,需要如下设置
如果我们想对源码进行记录或注释,发现是不能编辑的,源码是只可读文件,无法编辑,因为项目关联的还不是我们刚复制进项目的源码文件,还是JDK
安装目录下的源码文件,重新将项目关联的源码文件设置成该项目文件夹下的源码文件
-
test包下编写测试用例
此时发现进入源码是我们项目下的源码文件,可以编写注释。但运行测试用例会报编译错误一系列问题!!! 如果解决编译错误问题???请继续看下文
编译错误解决
-
程序包
com.sun.tools.javac.api
不存在问题
因为缺少tools.jar
工具包,如下操作选择JDK1.8
安装目录下的lib
目录下的tools.jar
引入到项目中。
-
找不到符号
UNIXToolkit
、FontConfigManager
的问题
需要在项目的source
包下新建sun.awt.UNIXToolkit
和sun.font.FontConfigManager
类
在 OpenJDK官网 找到这两个类的源码,分别复制到你新建的两个类中
复制完后,清除缓存并重启项目
最后,再运行测试用例,就可以执行成功
到这里我们整个的JDK8
源码环境搭建就已经完成了