无法导入Java实例方法
human-user opened this issue · comments
参照文档自定义函数和调用 Java 方法中的【导入实例方法】部分示例,报错FunctionNotFoundException: Function not found: s.indexOf
AviatorEvaluatorInstance evaluator = AviatorEvaluator.newInstance();
AviatorEvaluator.addInstanceFunctions("s", String.class);
evaluator.execute("""
p(s.indexOf("hello", "l"))
""");
依赖版本:5.3.3
理解有误,AviatorEvaluator.newInstance()
创建了一个新的AviatorEvaluatorInstance
,而AviatorEvaluator.addInstanceFunctions()
实际上是为默认的AviatorEvaluatorInstance
导入实例方法,此处应该用evaluator .addInstanceFunctions()