core-jsr223 模块以支持 JSR223(javax.script)标准接口:你可以用 ScriptEngineManager 获取名为 fluxon
的脚本引擎,并在 Java 应用中执行 Fluxon 代码。
添加依赖
获取并执行
Bindings 与作用域
engine.put(key, value)默认写入ENGINE_SCOPE,并在执行前注入到 Fluxon 的根变量中(脚本侧通过&key读取)。GLOBAL_SCOPE的变量同样会在执行前注入,但当前实现只会把“脚本执行后产生的变量/函数”回写到ENGINE_SCOPE。- 由于同一个
ScriptEngine实例会复用 bindings,会话内变量会跨多次eval保留;这也是core-consoleREPL 能持久化变量的原因。
与宿主注册 API 的关系
JSR223 引擎底层仍使用FluxonRuntime.getInstance().newEnvironment() 创建环境,因此你通过 FluxonRuntime 注册的系统函数/
扩展函数也会对 JSR223 引擎生效。