2020 年第一个候选 Java 增强提案,删除 Nashorn JavaScript 引擎

来源: OSCHINA
编辑: oschina
2020-02-28 08:31:00

Oracle 软件研发总监 Jim Laskey 提出了一项候选 Java 增强提案(JEP),要删除长期以来一直使用的 Nashorn JavaScript 引擎、相关 API 和jjs工具。这是 2020 年第一个进入候选名单的 JEP,并且比较成熟,有望在 JDK 15 中实施。

编号 JEP 372,该提案表示:Nashorn JavaScript 引擎最初通过 JEP 174 集成到 JDK 8 中,用以替代 Rhino 脚本引擎。当时它是 ECMAScript-262 5.1 标准的完整实现。但随着 ECMAScript 语言构造以及 API 的快速适应和修改,我们发现 Nashorn 难以维护。

根据该提议,两个 JDK 模块将被永久删除:

  • jdk.scripting.nashorn:包含 jdk.nashorn.api.scripting 与 jdk.nashorn.api.tree 包

  • jdk.scripting.nashorn.shell:包含 jjs 工具

但这一弃用将不会以任何方式影响 javax.script API。

Nashorn JavaScript 引擎发布时,其性能与之前的 Rhino 实现相比,提升达到 2 到 10 倍,这也是它能替代前者的原因之一,并且其采用也很广泛。但是在 2018 年 9 月发布的 JDK 11 中已经将其弃用(JEP 335),JEP 372 认为这么长的时间过去了,使用它的开发人员已经有足够的时间进行了迁移。

不过开发者对此有不同看法,有人认为 Java 一直以高度向后兼容闻名,不应该删除,有人吐槽公司还在使用 Rhino,也有人建议直接切换到 GraalVM,因为它是 JavaScript 与 Node 的更完整的实现,并且速度更快。

展开阅读全文
点击加入讨论🔥(42) 发布并加入讨论🔥
本篇精彩评论
这类库就应该作为第三方提供, 内置太多就臃肿了, 现在做减法也不晚, 之前也减掉过没几个人用的Derby和JavaFX, 甚至JavaEE都降成第三方的了.
2020-02-28 10:39
16
举报
每次java/jdk有动静,就有人刷 我司1.6/1.8什么的就来了,何必呢? 仿佛当年自己坚守xp系统 还劝别人不要上win7的人,各种黑新系统,没人敢站出来说新特性优势,因为一旦有人出来,就有一批喷子开始喷,微软给你多少钱 之类的……无语
2020-02-28 10:38
10
举报
你想多了,mybatis大面积使用就国内。国外还是hibernate的实现多。况且JPA仅仅是一种规范,定义了一些接口。
2020-02-29 10:30
3
举报
JPA怎么能删除呢,一堆ORM的库使用。
2020-02-29 09:11
3
举报
那是你没用到!
2020-03-01 11:00
2
举报
42 评论
2 收藏
分享
返回顶部
顶部