我正在寻找一种方法来开始使用 Oracle 的新 Nashorn JavaScript 引擎。我已经对最新的 OpenJDK 8 (b65) 进行了深度学习,看来 Rhino 仍然是唯一包含的脚本引擎。
有人知道 Nashorn 何时(或在哪个版本中)将取代 OpenJDK 中的 Rhino?或者更好的是,我在哪里可以获得已经包含它的 JDK?我知道 Netbeans 已经编写了一个调试器来使用它,只是不确定他们从哪里得到库/代码来开始编写它。
谁有链接?
谢谢。
最佳答案
OpenJDK 上似乎还没有 Nashorn 的迹象。
Jim Laskey 在 2012 年 10 月的最新评论表明 2012 年第四季度:
https://blogs.oracle.com/nashorn/entry/welcome_to_the_nashorn_blog#comment-1351205506968
我认为是时候使用 nashorn标记SO!
2012 年 12 月 1 日更新:
看起来像 2012 年 12 月下旬 OpenJDK 可能有它 https://blogs.oracle.com/nashorn/entry/request_for_project_nashorn_open
2013 年 3 月 10 日更新:
@Seth 是正确的,1.7 release 3 PRERELEASE 不是 Nashorn。我的错!
JDK 8 b68包括一个尚未合并的 nashorn~jdk8分支。
这个分支的自述文件说:
The Nashorn repo is in the process of being migrated to OpenJDK and as such is incomplete in several areas. The build system is not fully integrated. When complete, Nashorn will be installed in its proper location in the JRE. Once integrated, the correct version of the JDK will be wrapped around Nashorn. In the meantime, ensure you use JDK8 b68 or later.
如果您从源代码 checkout nashorn~jdk8,您可以构建 nashorn.jar
cd nashorn~jdk8/nashorn/make
ant clean; ant
您可以在最近的 jdk 1.8 版本中从 javax.script.ScriptEngineManager 请求“nashorn”引擎:
jrunscript -cp ./nashorn.jar -l "nashorn" -e "println(engine.factory.getParameter(
javax.script.ScriptEngine.ENGINE))"
> Oracle Nashorn
或在路径中使用 nashorn.jar:
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("nashorn");
2014 年 3 月 19 日更新:
来自@ncasas 的更新; JDK 8 is out而 Nashorn 是默认的 JS 引擎。
关于java - 如何开始使用 Oracle 的 Nashorn JS 引擎进行编码,它何时会取代 OpenJDK 中的 Rhino?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13427793/