kagamihogeの日記

kagamihogeの日記です。

JEP 335: Deprecate the Nashorn JavaScript Engineをテキトーに訳した

http://openjdk.java.net/jeps/335

JEP 335: Deprecate the Nashorn JavaScript Engine

Owner    Jim Laskey
Type    Feature
Scope   JDK
Status  Closed / Delivered
Release 11
Component   core-libs / jdk.nashorn
Discussion  jdk dash dev at openjdk dot java dot net
Effort  S
Reviewed by Alex Buckley, Brian Goetz, Dalibor Topic
Endorsed by Mark Reinhold
Created 2018/05/08 14:23
Updated 2018/07/17 11:21
Issue   8202786

Summary

Nashorn JavaScriptエンジンとAPIおよびjjsツールを、将来リリースでの削除を明示するため、非推奨化します。

Motivation

Nashorn JavaScriptエンジンはRhinoの置き換えとして、JEP 174を通し、最初はJDK 8で組み込まれました。リリース当初、これはECMAScript-262 5.1標準の完全な実装でした。

ECMAScriptの言語要素とAPIは極めて速いペースで修正され、Nashornのメンテナンスに負荷がかかるようになりました。

Non-Goals

非推奨化はjavax.script APIに何らの影響も与えない。

Description

二つのJDK modulesを最終的に非推奨化して@Deprecated(forRemoval=true)を付与します。

  • jdk.scripting.nashorn -- jdk.nashorn.api.scriptingjdk.nashorn.api.treeを含む。
  • jdk.scripting.nashorn.shell -- jjsツールを含む。jjs実行時にwarningを表示する。
Warning: The jjs tool is planned to be removed from a future JDK release.

型とモジュールの実際の削除は将来のJDKリリースで別のJEPとして提案します。

Alternatives

代替案は、信頼できる開発者がNashornのメンテナンス続行を表明することです。このJEPが組み込まれる前に表明があれば、差し戻します。組み込み後だがNashornの削除前の場合、それ以降のJEPで非推奨化をリバートします。

Risks and Assumptions

Nashorn削除のリスクは、JavaScriptが存在する前提の特定のアプリケーションが動作しなくなる恐れがあります。Nashorn使用の程度の把握は容易ではありません。Nashorn使用の実態をよりよく把握するため、フィードバックをお願いします。