2019 年 1 月之后,OracleJDK 将无法商用,对于站在 Java 岔路口的企业及开发者来说,接下来该怎么走?2019 年 Java 又会有怎样的发展?

作者 | Simon Ritter

译者 | 弯月

责编 | 屠敏

出品 | CSDN(ID:CSDNNews)

过去两年我都会写文章预测未来 12 个月内 Java 世界中即将发生的事情(https://www.azul.com/staring-java-crystal-ball/,https://www.azul.com/staring-java-crystal-ball-2018/)。今年我也会做同样的预测。

总体上,从技术角度来说,我认为今年应该会非常平静,这一点我会在下面每一节中解释。但是,从非技术的角度来说,我认为开发者和用户们需要在部署 Java 应用程序方面做出一些抉择。接下来,我们就来一起探讨一下。

嵌入式 Java

我并没有看到这个领域有什么变化。Oracle 完全放弃了在该领域的开发,已经不再提供支持非常流行的 ARM 架构的嵌入式应用程序的二进制文件了。

但是,我预测今年嵌入式应用程序中的 Java 应用将会增长。主要原因有三个:

  1. 许多其他公司依然在为嵌入式应用程序提供 JDK 的二进制文件。显然,我所在的 Azul 就是这些公司之一,我们能够为 ARM 处理器提供 Java(因此你可以继续在树莓派上使用 Java),也提供 PowerPC 和 MIPS 的 Java。目前的版本是 JDK 8,但很快就会发布 JDK 11。

  2. 摩尔定律的现实意味着,JVM 的内存需求(需要几个Mb的内存)已经不再被认为是额外的开销。

  3. Java Platform Module System 提供了一种方式,为应用程序构建自定义 Java 运行时,从而只包含应用程序需要的那些模块,而不是包含所有核心类库(更具体的讨论请参见我之前关于 jlink 命令的博客文章https://medium.com/azulsystems/using-jlink-to-build-java-runtimes-for-non-modular-applications-9568c5e70ef4)。这可以很容易地将 Java 的空间需求从几百兆降低至几十兆。这解决了在嵌入式环境中使用 JavaSE 的一个主要顾虑。

Java ME

我觉得已经可以说,Java ME 已经死了。虽然去年 Java ME 工作组还做过一些工作将其移植到 JCP 下,但这项工作会在三月份停止。似乎 V2COM 是唯一一家对这个方向有兴趣的公司,他们应该是在与 Eclipse 基金会合作这个项目。

我对于今年的预测是,Java ME 不会再有任何开发,也不会有任何真正的应用再使用它。我都怀疑我在 2020 年的预测中是否还会提及它了。

Java EE(现在是 Jakarta EE)

2018 年是企业级 Java 统合的一年,必要的知识产权、代码和测试都从 Oracle 移交给了 Eclipse 基金会。

Eclipse 基金会现在在努力制定标准流程的细节方面,从而替代一直使用至今的 JCP 的流程。因此,这个领域我认为不会有任何重要的开发。一个可能的例外就是微服务和 MicroProfile。考虑到这种架构方式的流行,我认为 Java 在这个领域会出现很多进展。

Java SE(Core Java)

我认为,去年年初我们本应有两个 Java 的主要版本。考虑到 OpenJDK 项目的发布预定版,我甚至都不需要水晶球就能预测!好消息是,这个流程非常顺利。Java SE 10 和 11 都如期发布了,必要的 JSR 也同时被创建、审查并得到了通过。伴随这一点,JCP 已经完成了 JSR 过程(通过 JSR 387),因此整个流程变得更简单。

今年,我预言会有至少两个主要版本,JDK 12 和 JDK 13。同样,这并不意味着我有诺斯特拉达姆士(法国预言家)那种能力。JDK 12 已经蓄势待发,我也被邀请加入 Java SE 13 的专家小组,其他方面的工作也都在进行。

从技术的角度来看,我认为两个发布都是发展性的,而不是革命性的。JDK 12 带有一个全新的语言预览功能,即 switch 表达式。Raw string literals 也被计划加到 JDK 12 中,但由于最佳实现方式还需要进一步讨论,因此被撤下了。同样,这也证明了新的发布流程很有效。这个流程不会加入尚未完成的功能,而是将其延后到下一个版本。我的预测是,这个功能即使在 JDK 13 中也无法做好。JDK 13 中我能看到的大多数改变都是幕后工作,因为该版本计划了更流行的功能,如 Valhalla 和 Loom。

Java Community Process(Java 社区过程,JCP)

我认为今年应该是 JCP 确立的一年。我代表 Azul 参加了大部分的 JCP 执行委员会(EC),所以我觉得我在这方面很有发言权。现在 Java ME 已经不存在,企业级 Java 已经移动到了 Eclipse 基金会,因此 JCP 中剩下的唯一重要的就是 Java SE 了。还有几个其他的 JSR 过程,但从 Java 平台整体来说这些过程并不重要。而且,在 Java SE 中,大部分本来由专家小组负责但工作都以 JDK 增强提案(JDK Enhancement Proposal,JEP)的形式移交给了 OpenJDK 社区。

不幸的是,这并没有留给 JCP 多少工作。执行委员会已经将面对面会议的次数从每年三次减少到了两次。我认为,在 JavaOne(或Oracle Code One或其他任何名字)开始之前,会议的次数会减少为一次。

JCP 对于 Java SE 依然至关重要,因为它提供了核心 Java 平台的正式规则——TCK,从而人们能够验证 Java 二进制文件是否遵循标准,而且更为重要的是,能给予那些提供替代版 Java 二进制发布的公司(如 Azul)以合适的知识产权。

我认为,我们会在 JCP 中看到更多变化,更多的公司会直接参与进来。

JDK 二进制

说完 Java 的技术方面,接下来讨论今年最大的变动——Java 的分发方式,以及更为重要的更新方式。本月晚些时候我们将发布 JDK 8 和 JDK 11 的最后一个公开更新。尽管 JDK 11 是个长期支持发布(LTS),但这只是你使用 Oracle JDK 的情况,因为它已经采用了不同的授权方式。这意味着,你依然可以在开发和测试中免费使用 Oracle JDK,但无法在产品中免费试用。如果你想从 Oracle 获得免费的、能用于产品的二进制,就要获得 Oracle OpenJDK 二进制(从 jdk.java.net)。所有这些发布都不提供长期支持。

我的预测是,到今年年底,绝大部分 Java 用户都会放弃使用 Oracle JDK。一些组织(显然,Azul 也在其中)会提供 OpenJDK 的构建,同时提供多种形式的支持,包括从当前发布移植布丁等。

如果你还没有考虑今年该用哪个 Java 版本,那现在就该下决定了。从下个月开始,如果安全布丁对你来说很重要(它们的确很重要),你就得决定怎样获取它们了。

结论

总的来说,我的预测为:在技术方面,2019 年将是寂静的一年,但也是重要的一年,因为人们需要选择使用哪个版本的 JDK。

你做好准备迎接 2019 年的 Java 了吗?

原文:https://www.azul.com/staring-into-my-java-crystal-ball-2019/

本文为 CSDN 翻译,如需转载,请注明来源出处。

 热 文 推 荐 

☞ 阿里推迟招聘;大疆因腐败损失 10 亿;ofo 两创始人消失? | 极客头条

☞ 任正非回应一切:今天的困难十多年前就有预计(附问答实录)

☞ 如何编写完美的 Python 命令行程序?

☞“对不起,你的离职是我的错!”

☞ Gartner的预言:通向混合IT之旅

☞ 阿里“菜鸟”AI?

☞ 刚刚!华为又被美国盯上了!

☞ 心疼!能为程序员男友做些什么吗?

print_r('点个好看吧!');
var_dump('点个好看吧!');
NSLog(@"点个好看吧!");
System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!");
cout << "点个好看吧!" << endl;
Console.WriteLine("点个好看吧!");
fmt.Println("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"

点击“阅读原文”,打开 CSDN App 阅读更贴心!

喜欢就点击“好看”吧

Java 即将迎来转折点相关推荐

  1. Java 即将迎来转折点?

    嵌入式 Java 我并没有看到这个领域有什么变化.Oracle 完全放弃了在该领域的开发,已经不再提供支持非常流行的 ARM 架构的嵌入式应用程序的二进制文件了. 但是,我预测今年嵌入式应用程序中的 ...

  2. 阿里开源自用 OpenJDK 版本,Java 社区迎来中国力量

    2019独角兽企业重金招聘Python工程师标准>>> 阿里开源自用 OpenJDK 版本,Java 社区迎来中国力量 3 月 21 日,阿里巴巴将宣布开源 Alibaba Drag ...

  3. 5GtoB即将迎来规模商用,如何共创行业新价值?

    4月14日,在华为公司第18届全球分析师大会期间,华为携手运营商代表.产业界代表举办了"5G激发行业新价值"论坛,与行业分析师.金融分析师共同探讨对5GtoB产业未来的展望.创新解 ...

  4. 什么时候可以升级HarmonyOS,华为鸿蒙OS即将迎来升级 手机版本或仍需时间

    原标题:华为鸿蒙OS即将迎来升级 手机版本或仍需时间 在2019年的华为开发者大会上,华为消费者业务CEO余承东正式对外发布了HarmonyOS.时隔一年后,华为开发者大会2020即将拉开帷幕.此次大 ...

  5. 华为android系统管理,安卓系统即将迎来封闭管理?华为首先发起,网友:流畅度更重要...

    原标题:安卓系统即将迎来封闭管理?华为首先发起,网友:流畅度更重要 现在的手机市场上,主要的操作系统就是安卓和iOS,这两个系统在智能手机市场二分天下.对于这两个系统的评价,都是有好有坏,iOS胜在了 ...

  6. 即将迎来M2的 MacBook Pro升级款 M2 Pro版本MacBook Pro或将于2023年3月发布

    Apple 预计将在 2023 年发布 2021 款 14 英寸和 16 英寸 MacBook Pro 的第一个修订版.这是迄今为止我们期望在 M2 Pro 和 M2 Max 芯片 MacBook P ...

  7. 不停歇的Java即将发布JDK16新特性速览及从菜鸟到架构师[图]

    一.不停歇的Java即将发布JDK16新特性速览 当开发者深陷Java8版本之际,这边下一版本Java16有了最新的消息,与Java15一样,作为短期版本,Oracle仅提供6个月的支持. 根据发布计 ...

  8. 鸿蒙系统吃鸡用转区吗,吃鸡:即将迎来转区功能,4种转区方式选择,玩家可自己决定!...

    吃鸡:即将迎来转区功能,4种转区方式选择,玩家可自己决定! 大家好,我是阿瑶,每天为你发布游戏领域最新情报.不知道玩家们有没有发现,光子现在把"营地"看得特别重要.无论是爆料还是新 ...

  9. 在即将迎来百年华诞之际,新研究揭示希尔顿改变全球的影响力

    在<希尔顿效应>一书中,畅销书作者Chip Heath描述了首个国际化酒店公司的持续影响 弗吉尼亚州麦克林恩--(美国商业资讯)--在希尔顿(Hilton, NYSE: HLT))即将于2 ...

最新文章

  1. HTML属性——180226
  2. jsp文件通常用common_29.jsp-动态生活之用Commons-FileUpload组件控制文件上传
  3. 正确关闭WCF代理对象
  4. 使用Minikube部署本地Kubernetes集群(二十九)
  5. argparser_Java命令行界面(第22部分):argparser
  6. 【洛谷 P1659】 [国家集训队]拉拉队排练(manacher)
  7. ruby 新建对象_Ruby中的面向对象编程
  8. 【4K HDR】2020年东京圣诞灯会/
  9. [Axios] axios的请求合并以及参数配置
  10. this全面解析(二)
  11. 7-25 总结 Junit 测试 和断言 /ArrayList 和LinkedList 的区别/HashCode用来存放数据.
  12. SRE 到底是什么?
  13. 简析新型传感器的通信方式——SENT 信号
  14. 计算机科学箴言集 -- 编程珠玑续
  15. 【慕课网】JavaScript中函数和this
  16. 将多个EXCEL表中部分固定单元格的内容整理提取到一张工作表中
  17. ORACLE DATABASE LICENSES 计算方法和收费
  18. 深入解读App买量行业
  19. VM14+CentOS7安装教程
  20. JavaScript声明和使用变量

热门文章

  1. 基于python的分布式扫描器_一种基于python的大数据分布式任务处理装置的制作方法...
  2. Python中装入包pandas和matplotlib
  3. 苹果手机软件升级密码_拥有苹果全家桶以后那些事
  4. 强化学习的数学基础2---PPO算法
  5. 中国机载预警雷达市场趋势报告、技术动态创新及市场预测
  6. 2021-2025年中国车轮运动防护产品行业市场供需与战略研究报告
  7. M1 Mac:支持 USB-C,但不完全支持
  8. “年薪 45 万美元的 Netflix 开发工作,我不要了”
  9. 火山引擎张鑫解读云原生2021:K8s 开先河、技能全栈、业务“无感”
  10. Objective-C依然占C位,Swift和SwiftUI在iOS 15中的使用情况