jdk javac运行不了_Intellij IDEA搭建jdk源码阅读环境
一、找到源码位置
直接找到jdk安装的目录,会看到src.zip的压缩包,这里面就是jdk的源码,例如下图:
在这里解压。
第一次尝试建议使用9或更早版本jdk的源码,否则易造成卡死。
二、Intellij IDEA搭建源码阅读环境
1、Intellij IDEA新建java项目
打开Intellij IDEA,左上角File > Project,新建一个java项目:
选取默认模板后Next:
项目名称与包结构示例,填写后点击Finish:
项目创建完成,例如下图:
2、把源码src.zip移动到该工程下的src目录下,并新建Main类
注意:
<1.直接粘贴到idea可能造成长时间卡顿,建议使用本文方法;
<2.部分教程把源码粘贴到自定义包目录下,可能导致源码import语句报错。
3、为了避免修改原来的SDKs,另外再添加一个名为“jdk-source-analysis”的jdk。
File ->Project Structure->Platform Settings ->SDKs
将其关联的jdk安装目录下的源码src.zip替换成项目的src
将jdk源码项目src添加到sourcepath中
修改项目(JdkSourceLearn)使用的jdk为新建的“jdk-source-analysis” jdk
三、运行Main类的main方法
如果运行不成功,会出现以下错误提示:
Error:java: OutOfMemoryError: insufficient memory(系统资源不足);
程序包com.sun.tools.javac.api不存在;
找不到sun.awt.UNIXToolkit;
找不到sun.font.FontConfigManager。
1、Error:java: OutOfMemoryError: insufficient memory
错误原因
导致这个错误的原因主要是因为jdk版本问题,此处有两个原因,一个是编译版本不匹配,一个是当前项目jdk版本不支持。
查看项目的jdk
File ->Project Structure->Project Settings ->Project
或使用快捷键Ctrl+Alt+shift+S打开项目的jdk配置:
查看此两处是否与目标jdk一致
查看工程的jdk
点击上图中Modules查看对应jdk版本:
查看java编译器版本
File–>Setting…–>Build,Execution,Deployment–>Compiler–>Java Compiler
设置相应Module的target bytecode version与jkd一致版本。
查看构建过程编译器所需的堆大小
File–>Setting…–>Build,Execution,Deployment–>Compiler
堆大小可由原来的700改为1000
2、程序包com.sun.tools.javac.api不存在
手动将jdk安装目录下lib包中tools.jar添加到项目中
File ->Project Structure->Project Settings ->Libraries
将tools.jar lib添加到jdk1.8.0_202-source-analysis项目中。
点击ok后。解决Error:(40, 31) java: 程序包com.sun.tools.javac.api不存在问题。
3、找不到sun.awt.UNIXToolkit、找不到sun.font.FontConfigManager
解决缺少的这两个类,可以去OpenJDK(http://openjdk.java.net/)拷贝
找到UNIXToolkit类,将UNIXToolkit类中的内容( 传送门)拷贝到项目的src\main\java\下,新建“sun\awt”包中的新建“UNIXToolkit.java”中。
到此已解决sun.awt.UNIXToolkit找不到的错误
找到FontConfigManager类,将FontConfigManager类中的内容( 传送门)拷贝到项目的src\main\java\下,新建“sun\font”包中的新建“FontConfigManager.java”中。
编辑整理丨田培辰
jdk javac运行不了_Intellij IDEA搭建jdk源码阅读环境相关推荐
- 【深入浅出 Yarn 架构与实现】1-2 搭建 Hadoop 源码阅读环境
本文将介绍如何使用 idea 搭建 Hadoop 源码阅读环境.(默认已安装好 Java.Maven 环境) 一.搭建源码阅读环境 一)idea 导入 hadoop 工程 从 github 上拉取代码 ...
- spring5.3.x源码阅读环境搭建
spring5.3.x源码阅读环境搭建-gradle构建编译 文章目录 spring5.3.x源码阅读环境搭建-gradle构建编译 一.依赖工具 二.下载源码 三.开始构建 四.编译源码 五.源码测 ...
- Mybatis 源码阅读环境搭建
Mybatis源码阅读环境搭建 前言 一.下载mybatis的源码 二.编译源码 三.创建测试项目 前言 mybatis源码阅读环境搭建还是比较简单的,接下来我们讲解一下如何搭建该源码阅读环境 ...
- Mac搭建JDK源码阅读环境
点赞再看,养成习惯,微信公众号搜索[虚竹讲程序经],获取更多技术干货! 想要读懂JDK源码,需要在自己电脑上搭建JDK的源码阅读环境,正所谓,工欲善其事,必先利其器.下面演示如何在Mac上结合Idea ...
- ardupilot java_基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建
基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建 作者:Awesome 日期:2017-10-21 需准备的软件工具 Ardupilot飞控源码 PX4 toolchain JAVA ...
- Spring Boot 2.0系列文章(四):Spring Boot 2.0 源码阅读环境搭建
前提 前几天面试的时候,被问过 Spring Boot 的自动配置源码怎么实现的,没看过源码的我只能投降��了. 这不,赶紧来补补了,所以才有了这篇文章的出现,Spring Boot 2. 0 源码阅 ...
- Spark源码学习之IDEA源码阅读环境搭建
软件准备 (1)Java 1.8 (2)Scala 2.11.12(需要在IDEA中安装) (3)Maven 3.8.2(需要在IDEA中配置) (4)Git 2.33 以上软件需要安装好,并进行环境 ...
- Gitolite + repo 搭建安卓源码开发环境
Gitolite + repo 搭建安卓源码开发环境 转载请注明出处:http://blog.csdn.net/u011479494/article/details/50629669 相比gitosi ...
- Ubuntu18.04搭建Android源码编译环境
一.前言 使用Ubuntu18.04搭建Android源码的编译,本文是参考Android系统源码编译文章撰写的. 二.步骤 1.下载Android源码.Ubuntu环境搭建.git安装请参考其他文章 ...
最新文章
- 为什么我的python没有run_为什么我的returncode=0而没有stdoutsubprocess.run?
- 不用开着电脑,如何将脚本代码放到服务器上?
- uniapp防止多次点击_多次赔、不分组、价格低,守卫者3号真的这么“逆天”?...
- 记录结果再利用的动态规划
- 戴尔服务:为企业转型导航
- vue生命周期大白话篇
- SAP Cloud for Customer里根据External Reference搜索销售订单
- 数据结构-树的基础代码
- mysql 5.1.3_1.1.1 MySQL5.5默认存储引擎的调整(3)
- 电子工业出版社博文视点在中国移动互联网研讨会
- E - Alignment
- 管程由哪三部分组成_换热器是几壳程?几管程的?
- MongoVUE的基本使用
- python调用sqlldr_sqlldr用法
- Centos7配置软RAID+LVM
- CSU2080: 航行日志的修复
- linux team 模式,linux 聚合口 team libteam 简介
- JS 截取视频某一帧图片 实现视频截图
- 中烟工业考计算机知识吗,广东烟草局中烟工业常见备考问题解答
- CE修改器入门:精确数值扫描