专栏首页Java架构师进阶整个国庆假期总算整理好了全网最新最简单的 OpenJDK13 代码编译

整个国庆假期总算整理好了全网最新最简单的 OpenJDK13 代码编译

1.下载源码

2.安装编译需要的依赖

3.安装 jdk 12

4.检查配置

5.开始编译

6.验证是否成功

回顾

最近因写文章需要查看 JVM 源码,有时代码逻辑不是很清晰,找半天,趁国庆假期,抽空下载了 OpenJDK13 搭建了 JVM debug 环境,把操作记录写在这篇文章里,让有需要的朋友可以参考,少踩坑。

我是在 Ubuntu 18.04 下编译的,不是在 Windows,建议不在 Windows 下折腾,会遇到比在 Linux 环境下多得多的问题。如果你电脑也是 Windows,可以像我这样,安装个 VMware 虚拟机软件,在里面装个 Ubuntu 系统,在虚拟机里面玩,这 2 个软件在官网下载就行,当然如果懒得去找也可以私信我“资料” VMware软件和 Ubuntu 18.04 镜像。还有一些我自己整理的资料

安装 Ubuntu 虚拟机就不在这篇文章说了,网上有相关的资料。

开始咯

1.下载源码

平时咱用的代码管理工具大多数是 Git,OpenJDK 并不是,而是用 Mercurial 管理工具,所以我们要安装它。通过下面命令安装。

sudo apt-get install mercurial

安装完代码管理工具后,我们就可以下载 OpenJDK13 的源码了,使用如下命令即可下载。这个过程根据网络状况,需要的时间不一,我下载花了十来分钟。

hg clone http://hg.openjdk.java.net/jdk/jdk13/

嗯,我就是这样干等了十来分钟,因为具体的官方操作文档也在里面,没下载下来无法看,网上也找不到相关的 Ubuntu 18 编译 OpenJDK13 的文章,所以不知道具体要安装哪些依赖。现在你看到这篇文章,可以不用干等着了,接下来步骤 2 和 3 不依赖源代码,可以继续操作。

2.安装编译需要的依赖

这一部分是查看了官方文档,做了总结,官方文档里面是按软件区分的,那样一个命令一个命令敲有点繁琐,就把它整合成一个命令,执行就完了,满足有些朋友想尽快编译完,少些多余的东西。

sudo apt-get install libfreetype6-dev libcups2-dev libx11-dev libxext-dev libxrender-dev libxrandr-dev libxtst-dev libxt-dev libasound2-dev libffi-dev autoconf gcc clang libfontconfig1-dev

想了解这些依赖软件是干嘛用的,可以看看官方文档,文档的位置如下图。

3.安装 jdk 12

这个在文档里面称为 Boot JDK,就是编译时需要上一个版本的 JDK 做为基础,一般是使用 N-1 版本,比如编译 OpenJDK8 就使用 JDK7 作为 Boot JDK,我们这里是编译 OpenJDK13,所以使用的是 JDK12。也是执行下面命令就搞定。

sudo add-apt-repository ppa:openjdk-r/ppa

sudo apt-get update

sudo apt-get install openjdk-12-jdk

安装完可以通过 java -version 来验证一下是否成功安装。见到如下结果就妥妥的。

执行完上面步骤,那么恭喜你,现在就可以开始编译了。

4.检查配置

我们安装了上面那么多东西,需要来检查一下是不是已经安装完所需要的软件,通过下面命令来检查。

bash configure

如果执行过程中有异常,就根据异常和提示信息,安装所缺的软件就行。如果看到下面的结果,那么再一次恭喜你,所有依赖软件都准备好了。

5.开始编译

最激动人心的时刻到来了,敲入下面的命令,开始编译吧。这个过程大概需要半个小时,耐心等候,可以稍作休息,喝杯 82 年的咖啡。

make images

见证奇迹的图片。看到下图说明编译成功啦。

6.验证是否成功

还需要再稳一点,验证编译后的 java 是否可用,通过下面的命令来验证。

./build/*/images/jdk/bin/java -version

看下图,出现 "13-internal" 2019-09-17 字样,我们编译出来的 JDK13 可以用啦。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 科大讯飞:我们和华为基因相似,板凳能坐十年冷,如今向C端强劲发力

    这是“AI国家队”科大讯飞正在探索的新路。与互联网不同,在人工智能领域中,To C业务反而未经大范围开拓。

    新智元
  • 科大讯飞刘庆峰再谈“人机耦合”:耦合才是AI真落地

    科大讯飞今天在合肥举办1024开发者节,上万名开发者来到合肥奥体中心,一起见证中国语音技术领域最大企业的新动态。

    新智元
  • 国庆文旅数据来了 景区“产业经济”亟待挖掘 | 每周文旅资讯精选(9.30-10.13)

    ? ? 国内首个夜景公园对游客开放 由中国城市科学研究会低碳照明研究中心、北京密云区蔡家洼村委会联合承建的国内首个夜景公园,于9月21日在北京市密云玫瑰情园...

    腾讯文旅
  • 95%中国客境外消费首选手机支付方式 | 每周文旅资讯精选(9.23-9.29)

    ? ? 国庆节民宿市场迎来红色旅游浪潮 西北跻身假期旅游地黑马 有平台发布《2019十一假期民宿预订趋势报告》,报告显示,住宿市场迎来一波红色旅游浪潮,以北京...

    腾讯文旅
  • “一部手机游武隆”上线试运行 打通智慧旅游服务闭环 ​| 数字文旅周报27期(8.26-9.1)

    ? “一部手机游武隆”上线试运行 打通智慧旅游服务闭环 8月26日,全球关注的国际化、专业性盛会2019中国国际智能产业博览会(简称智博会)正式开幕,期间...

    腾讯文旅
  • 数字文旅周报57期 | 文博会十六年来首次云上办,腾讯成为独家技术服务商

    ? ? 1.文博会十六年来首次云上办,腾讯成为独家技术服务商 9月15日,深圳国际文化产业博览交易会有限公司与深圳市腾讯计算机系统有限公司正式签约,双方达成全...

    腾讯文旅
  • 马化腾重庆智博会演讲:产业竞争正从“单打”变为“双打”

    ? 马化腾表示,目前产业竞争的主赛场正在由“单打”PK逐渐变为“双打”比赛。实体产业的竞争不再是单打独斗,各个实体产业正在与信息产业结合,形成新搭档来参与竞争...

    腾讯文旅
  • 刘庆峰:“两会”提案聚焦类脑计算和深度学习融合等,中美AI竞争押宝中国

    ---- 新智元报道 作者:克雷格 【新智元导读】去年“两会”上,全国人大代表刘庆峰提出国家设立人工智能实验室的建议已经被采纳。今年“两会”,刘庆峰的...

    新智元
  • 【实测】谷歌翻译特朗普就职演讲,正确率如何(附技术原理解析)

    【新智元导读】 美国新总统特朗普1月21日发表就职演讲,讲话内容受到国内高度关注。新智元使用谷歌翻译对特朗普就职演讲的内容进行了翻译实测,发现谷歌翻译的准确率相...

    新智元

扫码关注云+社区

领取腾讯云代金券