我正在使用 Spring boot 2.4.4、JDK 1.8,并创建了 ScriptEngine,如图所示。页面第一次加载完美,但第二次抛出下面提到的异常。
@Bean
public ScriptEngine scriptEngine() {
ScriptEngine engine = new ScriptEngineManager().getEngineByName("graal.js");
Bindings bindings = engine.getBindings(ScriptContext.ENGINE_SCOPE);
bindings.put("polyglot.js.allowAllAccess", true);
bindings.put("polyglot.js.allowHostClassLookup", true);
//engine.setBindings(bindings, ScriptContext.GLOBAL_SCOPE);
return engine;
}
org.graalvm.polyglot.PolyglotException: ReferenceError: document is not defined
<js>.:anonymous(<eval>:13)
<js>.:anonymous(<eval>:13)
<js>.r(<eval>:1)
<js>.:anonymous(<eval>:13)
<js>.:anonymous(<eval>:13)
<js>.r(<eval>:1)
<js>.:anonymous(<eval>:13)
<js>.:anonymous(<eval>:13)
<js>.r(<eval>:1)
<js>.:anonymous(<eval>:1)
<js>.:program(<eval>:1)
org.graalvm.polyglot.Context.eval(Context.java:344)