之前搭建了一个JDK阅读环境,为了效率,就先应急clone了一个Github上的再进行配置,好用是好用,但是因为没有亲手解决自己之前遇到的问题,耿耿于怀。
忍一时越想越气,吃完饭终于忍不住了,干他,非把他整活不可!
找到源码位置
在安装JDK的位置找到src.zip和javafx-src.zip,解压
如果忘了,可以在IDEA中找到目录(Projuect Structure)
IDEA搭建
第一步:新建项目
打开IDEA,按如下步骤新建一个简单Java项目
create new project

新建一个简单Java项目


点击finish后,项目就创建好了
第二步:添加源码
将之前解压的src.zip复制到工程目录下

第三步:替换JDK关联
为了能够备注以及避免修改到其他项目所使用的内容,添加一个名为“JavaJDK1.8Funyard”的SDK
并将Sourcepath修改为当前项目src下的源码内容
移除Sourcepath中关联的src.zip
将项目中的JDK源码关联到Sourcepath
修改项目使用的JDK为上面新建的
第四步:解决系统资源不足(OutOfMemoryError)
依次点击File–>Settings–>Build,Execution,Deployment–>Compiler
堆大小可由原来的700改为1700
第五步:解决com.sun.tools.javac.api不存在
将jdk安装目录下(不是自己新建的这个源码阅读工程)lib包添加到项目中
依然是Projuect Structure

点击ok,完成
第六步:解决找不到sun.awt.UNIXToolkit和sun.font.FontConfigManager
在项目中新建sun.awt包和sun.font包,分别新建UNIXToolkit.java和FontConfigManager.java

到OpenJDK寻找sun.awt.UNIXToolkit和sun.font.FontConfigManager的源码,分别复制到上面新建的两个类里

选择对应版本jdk

寻找UNIXToolkit类
进入到 /src/solaris/classes/sun/awt/目录,找到UNIXToolkit
FontConfigManager也是一样,路径:src/solaris/classes/sun/font/FontConfigManager.java
复制进去之后可以看到还是有错误的地方,这时候就要进行清理idea缓存然后重启:
点击左上角File->Invalidate Caches/Restart…
重启之后就可以顺利运行啦*(上面新建的类中可能还会报error,但是对使用没有影响)*
写好测试类,打好断点,右键debug,F7F7F7F7F7F7一直F7,爽到




确定没问题后,git add,git commit,git push安排~
最后附上本人的工程