Java调用Lua
Java可以通过两种方式调用Lua:
- 将Lua代码保存为字符串调用
- 将Lua代码保存为文件,通过文件调用
Lua代码保存为字符串调用
注意这种方式,load
的字符串中只能放进一个Lua的方法,或者(实践出真知,这里有误)一句Lua的语句,不可以出现多个语句(后面的语句不会执行)。
public void luaAsStr() {
String luaStr = "print 'Hello,world!'";
Globals globals = JsePlatform.standardGlobals();
LuaValue func = globals.load(luaStr);
func.call();
}
输出:Hello,world!
- 多个语句只执行第一个语句。
public void luaAsStr() {
String luaStr = "print('Hello,world!'); print('aaaaa')";
Globals globals = JsePlatform.standardGlobals();
LuaValue func = globals.load(luaStr);
func.call();
}
输出:Hello,world!
- 多个方法
String luaStr = "function out1() print('out1') end;function out2() print('out2'); out1(); end;out1();out2();";
Globals globals = JsePlatform.standardGlobals(