windows编译自己的JDK

文章目录

起因

之前在阅读JDK源码时,由于无法修改JDK源码(被加锁了,只能读,不能写,后面会说为什么不能写的原因),以至于看了很久才理解的代码,过了几个月在看,感觉自己好像失忆了一样,这才想着怎样给JDK源码加注释。

在网上看了一些帖子,好多都说把下图中的那个src.zip文件,解压了,然后把src.zip文件去除掉,再添加上解压的文件就可以添加注释了。
在这里插入图片描述
但是,这样添加的注释不能另起一行,要不然在debug的时候会出现行号不对应的情况,于是就想着能自己编译一个JDK就好了,然后就有了这篇文章。

问题一:为什么JDK源码是只读的

  • 因为我们依赖的是一个src.zip文件,压缩文件是不能写的,所以我们才会进行解压后再引入,才可以添加注释

问题二:为什么添加注释之后会出现行号不对应的情况

  • 因为如果我们修改了JDK源码,就必须重新编译,否则如果换行,会出现行号不对应的情况

解决

现在我们知道了JDK源码在这个src.zip文件夹里,我们能不能自己创建一个项目,然后把这个文件夹放到我们的项目里,这样就可以编译JDK源码了,也就是使用JDK编译JDK源码,想想就有意思,不试试怎么知道,看看能不能成功

创建一个maven管理的项目

在这里插入图片描述

编译一下试一试

在这里插入图片描述

第一个错误:内存溢出
在这里插入图片描述

解决方案:加大一下内存,点击左上角 File | Settings | Build, Execution, Deployment | Compiler

在这里插入图片描述
第二个错误:找不到sun.font包下的FontConfigManager这个类
在这里插入图片描述
解决方法:我们下载一个放到对应位置即可,网站传送门
在这里插入图片描述

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

在这里插入图片描述

第三处错误:缺少sun.awt包下的UNIXTToolit这个类
在这里插入图片描述
解决方法:同上

第四,五,六处错误:缺少程序包,不是项目文件缺包,是程序缺包。
在这里插入图片描述

解决方法:引入一下即可,File|Project Structure
在这里插入图片描述
在这里插入图片描述

第七处报错:缺sun.awt包,已经解决
在这里插入图片描述
第八处报错:还是缺sun.awt包,已经决绝
在这里插入图片描述

重新编译一下试试
在这里插入图片描述
注意:如果导入对应的类文件还是报错,就下载高一点版本的类文件试一下

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彤彤的小跟班

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值