JDK1.8源码下载及获取、导入IDEA阅读、配置JDK源码

简介: 本文是博主学习JDK源码的记录,希望对大家有所帮助。

🍀jdk下载

本文使用JDK版本为jdk1.8
在这里插入图片描述

下载地址:https://www.oracle.com/java/technologies/downloads/archive/

🍀获取源码

下载jdk压缩包版就可以,解压后,文件路径中会有一个src.zip文件,这个就是jdk源码。
在这里插入图片描述
解压后就可以获得jdk源码啦。建议拷贝后换个路径再解压。如下是我存放的路径
在这里插入图片描述

🍀导入IDEA

☘️新建java项目

使用默认配置,选择下一步
在这里插入图片描述
勾选从模板创建项目,再选择下一步
在这里插入图片描述
选择jdk源码路径,完成创建新项目
在这里插入图片描述
导入后显示文件结构
在这里插入图片描述

🍀IDEA相关后续配置

☘️项目的JDK关联当前src源码

在这里插入图片描述
将原来的src.zip替换成现在解压后的版本
在这里插入图片描述
在这里插入图片描述
修改项目使用jdk
在这里插入图片描述

☘️com.sun.tools.javac.api不存在,导入安装jdk路径下的lib

在这里插入图片描述
在这里插入图片描述

☘️sun.awt.UNIXToolkit和sun.font.FontConfigManager不存在,下载导入openjdk的源码

新建UNIXToolkit.java和FontConfigManager.java类,注意包名一致。
在这里插入图片描述
OpenJDK寻找sun.awt.UNIXToolkitsun.font.FontConfigManager的源码,分别复制到上面新建的两个类里

下载jdk8u的可以直接使用上面的链接,其他版本可参考下图寻找openjdk源码
在这里插入图片描述
复制sun.awt.UNIXToolkitsun.font.FontConfigManager源码替换我们刚刚新建的两个类就可以了。

配置好应该就也可以开始愉快的学习了。

🍀测试类

package com.ber;

import java.util.HashMap;

public class Main {

    public static void main(String[] args) {
    // write your code here
        HashMap hashMap = new HashMap<>();
        hashMap.put("k1","v1");
        hashMap.put("k2","v2");
        hashMap.put("k3","v3");
        hashMap.put("k4","v4");
        hashMap.put("k5","v5");
        hashMap.get("k2");
    }
}

在这里插入图片描述
如图,已成功debug。

🍀Tips

博主没有遇到OutOfMemoryError内存溢出错误,如果有小伙伴存在这个错误。可以尝试调大构建项目的内存大小。

具体设置:Settings—>build,execution,deployment---->compiler---->Build process heap size (Mbytrs)
在这里插入图片描述

🍀有小伙伴不想动手配置,上传一份配置好的jdk源码

源码地址:https://github.com/BerBai/JDK1.8_SourceCode

目录
相关文章
|
2月前
|
Java Maven
【Maven】下载配置maven以及IDEA配置maven详情
【Maven】下载配置maven以及IDEA配置maven详情
120 0
|
18天前
|
数据建模 Go vr&ar
idea配置go依赖下载
idea配置go依赖下载
15 0
|
27天前
|
Java
jdk的安装与环境变量的配置
jdk的安装与环境变量的配置
15 0
|
28天前
|
NoSQL 关系型数据库 MySQL
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
Docker安装详细步骤及相关环境安装配置(mysql、jdk、redis、自己的私有仓库Gitlab 、C和C++环境以及Nginx服务代理)
177 0
|
1月前
|
Java 编译器 测试技术
滚雪球学Java(04):JDK、IntelliJ IDEA的安装和环境变量配置
【2月更文挑战第11天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!
46 1
|
1月前
|
算法 Java 索引
【数据结构与算法】4、双向链表(学习 jdk 的 LinkedList 部分源码)
【数据结构与算法】4、双向链表(学习 jdk 的 LinkedList 部分源码)
30 0
|
2月前
|
安全 Java
JDK的安装及环境变量配置
JDK的安装及环境变量配置
|
2月前
|
设计模式 Java
根据JDK源码Calendar来看工厂模式和建造者模式
根据JDK源码Calendar来看工厂模式和建造者模式
33 3
|
2月前
|
Java Maven
idea下载不下来maven三方库源码处理
idea下载不下来maven三方库源码处理
29 0
|
应用服务中间件
idea优化配置多个 tomcat
1.按图所示点击编辑 2.点击右上角的加号添加 tomcatserver  local  点击 3.
1682 0