引言

  之前在阅读JDK源码时,我们通常都是直接打开的引入JDK包下的类进行学习的,可是这里面的类文件我们是无法做修改,没有办法直接写我们自己的注释到上面,笔记记录非常麻烦。因此我们可以搭建自己的源码环境,在后续阅读过程中可以直接对类文件做修改,也方便我们回顾和复习。

搭建环境

一.解压源码压缩包

  首先找到我们JDK的安装目录,本人当初安装JDK时候使用的安装版并且装在了默认路径下。所以我的安装目录在 C:\Program Files\Java\jdk1.8.0_181
JDK8源码阅读-WINDOWS下环境搭建  解压之前,我们先在IDEA里面新建一个项目,我这里建的是一个Maven项目
JDK8源码阅读-WINDOWS下环境搭建  把jdk目录下的src.zip 解压到我们自己的项目里面

JDK8源码阅读-WINDOWS下环境搭建  解压完成后,在IDEA里面我们可以看到目录结构是这样的
JDK8源码阅读-WINDOWS下环境搭建

二.编译项目

  直接构建即可
JDK8源码阅读-WINDOWS下环境搭建  啊哦,报错了
  Error:(27, 15) java: 找不到符号 符号: 类 UNIXToolkit 位置: 程序包 sun.awt
  Error:(33, 16) java: 找不到符号 符号: 类 FontConfigManager 位置: 程序包 sun.font
  Error:(40, 31) java: 程序包com.sun.tools.javac.api不存在
JDK8源码阅读-WINDOWS下环境搭建JDK8源码阅读-WINDOWS下环境搭建JDK8源码阅读-WINDOWS下环境搭建  其中,Error:(40, 31) java: 程序包com.sun.tools.javac.api不存在,这个只要引入一下Jdk目录下lib包下的tools包即可。

  右键项目根目录打开模块管理
JDK8源码阅读-WINDOWS下环境搭建JDK8源码阅读-WINDOWS下环境搭建JDK8源码阅读-WINDOWS下环境搭建
  点击OK即可,可以看到这个报错就没了

  然后另外两个报错是因为Windows环境下缺少了两个文件导致的,我们需要自己去OpenJDK网站下载 OpenJDK

  进入网站之后,在左侧找到Mercurial
JDK8源码阅读-WINDOWS下环境搭建
  然后找到jdk8u
JDK8源码阅读-WINDOWS下环境搭建
  然后找到jdk8u -> jdk
JDK8源码阅读-WINDOWS下环境搭建
  然后最左侧找到browse
JDK8源码阅读-WINDOWS下环境搭建
  然后打开 src -> solaris -> classes -> sun ,就可以看到两个目录: awt 和font
JDK8源码阅读-WINDOWS下环境搭建
  分别点进去找到这两个文件 UNIXToolkit.java FontConfigManager.java
JDK8源码阅读-WINDOWS下环境搭建
  打开之后把里面的内容拷贝出来放到自己建的一个文件中
JDK8源码阅读-WINDOWS下环境搭建
  回到我们的IDEA项目中,在java路径下新增sun.awt包和sun.font包,把上面那两个文件放进去
JDK8源码阅读-WINDOWS下环境搭建
  重新编译一下,发现又报错了,系统资源不足 Error:java: OutOfMemoryError: insufficient memory
JDK8源码阅读-WINDOWS下环境搭建  提示内存不足,我们加大一下内存,点击左上角 File | Settings | Build, Execution, Deployment | Compiler
JDK8源码阅读-WINDOWS下环境搭建  这里默认是700,我们调到1024,再次编译一下
JDK8源码阅读-WINDOWS下环境搭建
  OK,环境搭建完毕

最后

  最后我把这个项目初始化化成了Git项目,方便自己去记录学习历史,复习时候可以根据Git的提交历史,找到思路
JDK8源码阅读-WINDOWS下环境搭建

相关文章: