前言:
想要窥探Java虚拟机的内部原理,最直接的方式就是编译一套自己的JDK,通过阅读和跟踪调试JDK源码来了解Java体系的运作,虽然这样的门槛会比阅读资料来的更高一点,但肯定会比阅读各种帖子文章来的更加贴近本质。此外,java类库中很多底层方法都是Native的,在了解这些方法的运行过程,或对JDK进行Hack的时候,都是需要有自行编译、调试虚拟机的能力。
现如今网络上有不少开源JDK实现供我们选择,但毫无疑问OpenJDK是应用最为广泛的。
-- 源自别人的话
系统环境:
采用VMware虚拟机镜像采用ubtuntu21作为编译环境(可以采用稍微低一点的版本)
开始前建议完整阅览JDK源码下Buding.html文档。
操作步骤:
1.安装git
sudo apt install -y git
2.拉取源码-本次选择Jdk11为源码
https://hg.openjdk.java.net/jdk/jdk11/
解压到随意位置
3.安装必备依赖
GCC:sudo apt-get install -y build-essential
FreeType: sud