HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

专访 Martijn Verburg,关于 AdoptOpenJDK 与 Nestmates

  • 2018-06-11
  • 本文字数:2374 字

    阅读完需:约 8 分钟

InfoQ 在之前发布的一篇新闻中提到, AdoptOpenJDK 项目近期已正式发布其构建平台,以免费软件的形式提供社区版的 OpenJDK 二进制包。

InfoQ 近期对 Martijn Verburg 进行了一次专访,Martijn 是伦敦 Java 社区的领导人、AdoptOpenJDK 的联合创始人之一、同时也是 jClarity 的 CEO。专访的内容包括 AdoptOpenJDK 构建平台的整体目标、早期功能的编译包、对于 Nestmates 和 Java 11 的看法、AdoptOpenJDK 在 2018 年的发展计划,以及开发者如何参与这一项目的方式。

InfoQ:能否请你简单地介绍一下你本人、你在 AdoptOpenJDK 项目中担任的角色,以及 AdoptOpenJDK 整体的目标是什么?

Martijn Verburg:我是 Martijn Verburg (又名"魔鬼开发者"),目前是 jClarity 的 CEO,同时也领导着几个 Java 生态圈内的创新项目的开发 ,例如 AdoptOpenJDK。我本人在项目中是负责制订 AdoptOpenJDK 构建平台发展战略的团队成员之一,同时也指导着近 300 位志愿者为完成构建平台的共同目标所努力。另外我也会进行一些技术工作,例如编写编译脚本和文档,这多亏了那些比我更胜任的工程师们的指导才能完成!

AdoptOpenJDK 早期的目标是作为 OpenJDK(基于 Java 的开源系统)的拥护者而启动的一个上架(onboarding)项目,它目前仍然扮演着这一角色。不过,最近这段时间它更注重于为 OpenJDK 提供一个长期的、稳定的构建平台(并提供通过专业测试的 Java 二进制包)。

InfoQ:AdoptOpenJDK 的构建平台已正式投入使用,以免费软件的形式生成社区版的 OpenJDK 二进制包。这个构建平台的整体目标是什么呢?

Verburg:这个平台的目标是让几百万 Java 开发者始终能够获得经过专业测试的 Java 二进制包,并且保障至少提供 4 年的免费长期服务(LTS)计划。这意味着 Java 开发者可以安心地继续使用 Java,而无需担心许可或是对它的长期支持等问题。对那些更愿意享受商业支持便捷性的企业来说,仍然可以在 Oracle、IBM、Azul 和 Red Hat 等厂家之间进行选择。

另一个重要的原因是,我们希望 Java 能够继续遵守它"一次编写、到处运行"的承诺,即便是在 Linux x86、Mac OS X 和 Windows 等主流平台之外。因此,我们提供了多种构建脚本和构建节点,以支持 zOS、AIX、Linux z390、ARM 32 位和 64 位等平台。

最后还有重要的一点,我们希望通过为 Valhalla 和 Amber 等实验性项目提供早期版本构建产物的方式,为支持 OpenJDK 本身的开发做出一点贡献。

在 AdoptOpenJDK 网站上的"关于"页面中介绍了该项目的更多细节。

InfoQ:能否请你介绍一下 “OpenJDK amber with Hotspot” 这个构建选项的内容,以及其中一些特别的特性,例如原始字符串字面量(raw string literal)等等?开发者是不是很快会看到其余的 Amber 项目的特性和构建选择,例如 Switch 表达式、Lambda Leftovers 等等?

Verburg:Amber 项目中的 raw-string-literals 分支提供了一个对 JEP 326 规范的早期实现。我们在 3 个主流的平台上都提供了支持,开发者可以提早试用,为 OpenJDK 团队提供早期的反馈。

近期内,我们还会添加一些新的分支,加入你所提到的新特性!

InfoQ:你对于 Java 虚拟机规范中允许通过“nestmate”类访问私有类成员的这一提议有什么看法?

Verburg:无论是对于安全性,还是对于减少开发者的困扰来说,这都是一个虽不起眼,但意义重大的 Java 改进。目前,JVM 还只能通过创建 bridge 的方式让声明在同一个文件中的多个类共享控制访问。按 JEP 所说:“这种 bridge 方式破坏了类型的封装性,稍许增大了部署应用包的体积,并且造成了使用者与工具的困惑!”。为了支持值类型这种大更新,还有许多其他小的内部 JEP 相关特性需要完善。

我很乐意于看到这种特性的出现,它提升了 Java 的安全性。更重要的是,它为 OpenJDK 团队处理更大、更困难的问题提供了额外的参考信息与知识。

InfoQ:你对于 Java 11 的看法是什么?它为开发者带来了哪些功能?

Verburg:它带来了一些非常重要的变化,包括(但不限于)以下内容:

  • Aarch64 (ARM 64)平台上的性能改进 —— 对于这个快速发展的平台而言是个好消息
  • ZGC 垃圾回收器的早期发布版本,它的特点是对于超大的堆的垃圾回收降低了延迟,与目前 Azul 的商业版本 Zing JVM 的功能相类似。
  • 去除了 Java EE 和 CORBA 模块(开发者需要在构建工具中替换为对应的第三方库)
  • 全新的 HTTP2 客户端功能,实在是拖延了太久了!现在已经可以看到一些基于 HTTP2 创建的第三方 WebSocket 和 HTTP 库了。
  • Flight Recorder (JFR)已实现开源,可在生产环境中无限制使用。这对于 JVM 的性能监控来说是件大好事!

此外,还有一部分变更已计划随着 Java 11 推出。

InfoQ:AdoptOpenJDK 项目在 2018 年有哪些计划?

Verburg:对 Java 8 和 11 的二进制版本进行全面的测试并通过 TCK 兼容性验证,支持全部主流平台和大部分的小体量平台,并且提供 4 年的长期服务(LTS)许可。

InfoQ:感谢你能够参与今天的专访,你还有什么想法要与 InfoQ 的读者分享么?如果读者想要参与 AdoptOpenJDK 项目,最好的方式是什么?

Verburg:我相信,对于 Java 的长期发展来说,AdoptOpenJDK 的构建平台将扮演一个重要的角色。同时,它也是你学习现代化构建、测试与部署环境的一个好去处,对于你的职业发展大有裨益!加入项目的最佳方式是通过 Slack 频道 —— 已经有约 300 名志愿者加入了我们,一起组织各种丰富的活动,包括底层的 shell 脚本编写、网站设计、文档编写、市场宣传和推广,以及很多我没有提到的活动。

InfoQ 上的相关文章也介绍了 Nestmates 和 AdoptOpenJDK 的更多信息:

  1. Java Nestmates 稳步推进
  2. 社区 OpenJDK 代码构建平台投入使用

读者也可以关注 InfoQ 上的 Java 专栏主页,以了解 Java 方面的新闻动态。InfoQ 上的相关文章也介绍了 Nestmates 和 AdoptOpenJDK 的更多信息:

查看英文原文: Q&A with Martijn Verburg on AdoptOpenJDK and Nestmates

2018-06-11 14:561992
用户头像

发布了 428 篇内容, 共 177.5 次阅读, 收获喜欢 38 次。

关注

评论

发布
暂无评论
发现更多内容

一次性吃透基于Spring Cloud动态配置实现动态数据源

互联网架构师小马

GitHub标星159K的Java学习手册,太香了!

互联网架构师小马

Java

软件测试 | Selenium-Grid架构

测吧(北京)科技有限公司

测试

NFTScan 与 SPACE ID 达成合作伙伴,支持 .bnb / .arb 域名搜索!

NFT Research

域名 NFT\

AI 大战高考作文!实测 ChatGPT、文心一言、通义千问等 8 款“神器”

博文视点Broadview

Dubbo框架适配模块及实现原理

互联网架构师小马

逐鹿AI+、论道沪上,华为云企业快成长AI+大数据技术创新论坛在上海举行

说山水

为世界第一大癌症高效研发首创新药,AI大模型助力药物研发叩开未来之门

飞桨PaddlePaddle

人工智能 paddle 飞桨

啥?PCB拼版对SMT组装有影响!

华秋PCB

PCB SMT PCB设计 PCB拼版 贴片

瓴羊Quick BI:商业智能工具的新标杆

巷子

深入学习 Linux 操作系统的存储 IO 堆栈

KaiwuDB

KaiwuDB Linux存储 IO堆栈

Junit执行器Runner探索之旅 | 京东云技术团队

京东科技开发者

单元测试 JUnit runner 源码解读 企业号 6 月 PK 榜

豫园股份×奇点云:集团统一战略的数据平台这样炼成

科技热闻

注解切面适配模块及实现原理

互联网架构师小马

TiDB x Catalyst丨秒级洞悉数据价值,TiDB 帮助“客户成功 SaaS 厂商”提升用户体验

PingCAP

数据库 分布式 TiDB

GitHub热榜,亿级流量并发手册彻底揭开阿里高流量的秘密

互联网架构师小马

数据库的 Schema 变更实现

KaiwuDB

KaiwuDB Schema 锁表

Wallys DR9074 4x4 Wlan module work on X86 device/DR9074 应用在X86。

Cindy-wallys

QCN9074 QCN9024

软件测试 | Dalvik虚拟机是如何执行程序的

测吧(北京)科技有限公司

测试

麒麟操作系统是什么?和linux的区别是什么?

行云管家

信创 麒麟操作系统

领域建模之数据模型设计方法论 | 京东云技术团队

京东科技开发者

数据模型 建模 业务模型 企业号 6 月 PK 榜

Dubbo负载均衡策略之 一致性哈希 | 京东云技术团队

京东科技开发者

dubbo 哈希算法 数据倾斜 企业号 6 月 PK 榜

百度沈抖:大模型 产业智能化时代的新引擎

飞桨PaddlePaddle

百度 算法

SpringMVC框架适配模块及实现原理

互联网架构师小马

OpenFeign框架适配模块及实现原理

互联网架构师小马

Bettertouchtool for Mac:触控板增强工具

背包客

macos Mac 软件 BetterTouchTool教程 Mac触控板增强 Bettertouchtool

2023 可信数据库发展大会:近百位行业大咖将出席演讲

KaiwuDB

KaiwuDB TDBC 2023可信数据库发展大会

字节算法中了80%!靠着这份GitHub上的算法小抄,成功斩获Offer

互联网架构师小马

Java 数据结构 算法 LeetCode

微服务高并发:动态配置的实现原理搞懂了

互联网架构师小马

瓴羊Quick BI:数据大屏的智能解决方案

流量猫猫头

Pycharm配置远程调试

Geek_7ubdnf

专访Martijn Verburg,关于AdoptOpenJDK与Nestmates_Java_Kesha Williams_InfoQ精选文章