一、依赖包
-
- <dependency>
- <groupId>org.luaj</groupId>
- <artifactId>luaj-jse</artifactId>
- <version>3.0.1</version>
- </dependency>
二、代码示例
- // 脚本函数可以存在字符串中
- String formula = "function ntc(n) return 2*n end";
- //String formula = ntcFormulaVO.getFormula();
- // Lua环境
- Globals globals = JsePlatform.standardGlobals();
- // 加载lua脚本内容
- LuaValue chunk = globals.load(formula);
- // 执行
- chunk.call();
- // 获取Lua函数,函数名为ntc()
- LuaValue func = globals.get("ntc");
- // 调用函数
- LuaValue computeTemp = func.call(LuaValue.valueOf(ntc));
- // 结果转换
- double computedTemp = computeTemp.checkdouble();
- log.info("计算出的温度值=={}, computedTemp);