美文网首页
IDEA 搭建 JDK 源码工程简记

IDEA 搭建 JDK 源码工程简记

作者: 末池桑 | 来源:发表于2020-09-08 22:17 被阅读0次

    好记性不如烂笔头,记一篇 IDEA 中搭建 JDK 源码阅读工程的文章,防止下次踩坑,此次 JDK 版本为:1.8.0_261

    导入源码

    创建新的 Maven 项目工程,在 JDK 安装目录,找到 src.zip 源码文件,将其内容解压至 Maven 项目 src/main/java 目录下

    所遇问题

      1. Error:java: Compilation failed: internal java compiler error
      1. Error:java: OutOfMemoryError: insufficient memory
      1. 程序包 com.sun.tools.javac.api 不存在
      1. UNIXToolkit、FontConfigManager 类不存在
      1. Debug 无法 Step into 到 JDK 源码,即使可以也是不可修改源码文件(不利于学习 JDK 源码)。

    问题解决方案

    1. Error:java: Compilation failed: internal java compiler error
      编译时,IDEA JDK 版本未选对原因,配好如下3个选项。
    1. Error:java: OutOfMemoryError: insufficient memory
      编译时,内存不够的原因,导致堆内存溢出,更改编译时的堆内存大小即可,IDEA 默认设置为 700M,这里改为 1024M 即可。
    1. 程序包 com.sun.tools.javac.api 不存在
      缺失 tools.jar 包导致的问题,将 JDK lib 目录下的 tool.jar 配置进 Libraries 里。
    1. UNIXToolkit、FontConfigManager 类不存在
      JDK 源码中无此类, 可点击此处 ,按如下操作,找到所需类:

    双击上图所示的类,复制其内容,在工程中相应包位置创建如上两个类,并将内容复制进去即可

    注:如不想折腾,可直接到此 GitHub 项目下获取相应类即可:GitHub项目地址

      1. Debug 无法 Step into 到 JDK 源码,即使可以也是不可修改源码文件(不利于学习 JDK 源码)。
        默认情况下,IDEA 设置 Debug 不让 Step into 到源码里,通过如下配置,将 Do not step into the classes 取消打钩即可。

    修改完后即可 Step into 到源码,但此时并不可以修改其内容,按照如下方法重新修改源码路径即可:

    以上,JDK源码工程搭建完成!

    相关文章

      网友评论

          本文标题:IDEA 搭建 JDK 源码工程简记

          本文链接:https://www.haomeiwen.com/subject/ojnjektx.html