Nashorn是Java虚拟机JavaScript引擎,由于较新的技术已被淘汰,因此可以弃用。
Nashorn于2014年在Java Development Kit(JDK)8中首次亮相。它提高了Java和JavaScript之间的兼容性,同时提供了性能优势。 但是,根据OpenJDK Java社区提出的正式弃用提议,ECMAScript语言结构和API的快速变化使其“挑战”了Nashorn的维护。
另外,Java应用程序还可以使用JavaScript的其他实现。 例如,GraalJS可能很快就可以作为开发人员的模块使用。 它使用Oracle的Truffle库来实现语言,并提供与Nashorn相同的大多数功能。 但是目前没有计划将GraalJS或任何其他新JavaScript实现添加到JDK本身。
Nashorn的API和JJS工具也将不推荐使用。 不受弃用影响的是javax.script
脚本API。
通过删除Nashorn,某些应用程序可能由于对JavaScript的期望而不再运行。 Nashorn使用了多少并不容易跟踪,因此Java社区过程会寻求有关其实际使用情况的信息。
不建议使用的特定模块包括:
-
scripting.nashorn --
,其中包含jdk.nashorn.api.scripting
和jdk.nashorn.api.tree
包。 - s
cripting.nashorn.shell --
,其中包含JJS工具。 -
jdk.dynalink --
,它包含Dynalink支持库。
From: https://www.infoworld.com/article/3279893/nashorn-javascript-engine-for-jvm-could-be-axed.html