我想将最新的ECMAScript支持添加到我的Java应用程序中。我目前将Java 8与Nashorn引擎一起使用。如何切换到Graaljs?
这是我应该翻译的代码:
import jdk.nashorn.api.scripting.NashornScriptEngineFactory;
private ScriptEngine engine;
engine = new NashornScriptEngineFactory().getScriptEngine("-scripting");
...
engine.setBindings(bindings, ScriptContext.GLOBAL_SCOPE);
GraalVM为此目的有一个示例项目https://github.com/graalvm/graal-js-jdk11-maven-demo
通常建议使用GraalVM Polyglot API,但与脚本引擎也具有兼容性。示例项目执行以下操作:
ScriptEngine graaljsEngine = new ScriptEngineManager().getEngineByName("graal.js");