Idea搭建JDK8源码环境

1.准备

IDE:IntelliJ IDEA

jdk:oracle JDK8

下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html

在JDK8的安装路径下找到src.zip压缩包,这就是我们需要的源码。

idea java jar变成源码 idea jdk源码_hg

2.搭建步骤

2.1新建项目

在Idea中,新建简单的java project,如下:

idea java jar变成源码 idea jdk源码_idea java jar变成源码_02

idea java jar变成源码 idea jdk源码_java_03

idea java jar变成源码 idea jdk源码_java_04

idea java jar变成源码 idea jdk源码_jdk_05

2.2添加源码

首先将JDK8的源码src.zip解压,然后将解压后的src目录下的所有文件拷贝到我们的项目src下:

idea java jar变成源码 idea jdk源码_jdk_06

2.3替换关联的JDK

为了避免修改到其他项目所使用SKK的内容,我们需要添加自己的SDK,如下:

file->Project Structure->SDKs,移除Sourcepath下关联的src.zip。

idea java jar变成源码 idea jdk源码_hg_07

关联到我们自己项目的JDK源码路径。

idea java jar变成源码 idea jdk源码_jdk_08

修改项目,使用我们自己的JDK

idea java jar变成源码 idea jdk源码_jdk_09

2.4解决资源不足的问题

File->Settings->Build,Execution,Deployment->Compiler

修改适当大一点。

idea java jar变成源码 idea jdk源码_idea java jar变成源码_10

2.5编译测试

当上面全部配置完成后,新建一个测试类,进行测试。

idea java jar变成源码 idea jdk源码_hg_11

这个时候需要构建一段时间,等待即可。

3.常见问题

3.1com.sun.tools.javac.api不存在

File->Project Structure->Libraries

添加JDK安装路径下的lib包到我们的项目中去。

idea java jar变成源码 idea jdk源码_jdk_12

idea java jar变成源码 idea jdk源码_hg_13

点击ok完成。

idea java jar变成源码 idea jdk源码_java_14

3.2找不到sun.awt.UNIXToolKit和sun.font.FontConfigManager

1)在新项目中添加对应的包

idea java jar变成源码 idea jdk源码_hg_15

2)到http://hg.openjdk.java.net中寻找对应的类

http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/e17fe591a374/src/solaris/classes/sun/awt/UNIXToolkit.java

idea java jar变成源码 idea jdk源码_idea java jar变成源码_16

http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/e17fe591a374/src/solaris/classes/sun/font/FontConfigManager.java

idea java jar变成源码 idea jdk源码_.net_17

将这两个类拷贝到我们项目刚刚新建的对应包下。

idea java jar变成源码 idea jdk源码_jdk_18

复制进去后重新启动Idea,并再次编译即可。