JDK1.8源码分析03之idea搭建源码阅读环境
- 创建
Java 工程
New→Project→Java Project
- 导入
JDK 源码
src 文件夹右击,Import→Archive File→选择 JDK 安装路径下的 src.zip
解决源码编译报错
看着很多错误,其实就是缺少几个 java 文件,下面一个个解决

- 导入
JDK 安装路径下 lib 文件夹下的tools.jar
JavaSource 工程右击,Build Path→Configure Build Path…→Libraries选项卡→
Add External JARs→选择 tools.jar →Apply And Close

重新编译后,JavacTask 不报错了
- 在
src 文件夹下新建 sun.font 包
FontConfigManager.java 去 OpenJDK网站下载
- 在
src 文件夹下新建 sun.awt 包
UNIXToolkit.java 去OpenJDK网站下载
- 如上图所示,还是会报错
原因是 UNIXToolkit 类里面缺少 GtkVersions 枚举变量和 getGtkVersion() 方法


加入如下代码,错误消失
public enum GtkVersions {
GTK2, GTK3
}
public static GtkVersions getGtkVersion() {
return null;
}
至此,Java源码阅读学习环境搭建完毕!
总结
搭建 JDK 源码阅读学习环境就是将 JDK 源码导入 Java 项目,然后将缺少的东西放进去。
比如 tools.jar 包、sun.font.FontConfigManager 类、sun.awt.UNIXToolkit 类等。
这里将 JDK 8 的源码项目放入百度云了,有需要的可以下载。
链接:JavaSource
提取码:stvh