在 iOS Objective-C 中使用Lua - Require 的路径

我在我的iOS应用中使用lua进行脚本编写。我试图做的简单之事是通过'require'添加另一个lua文件。

我的Lua文件包含在我的XCode项目中,位于以下目录:

Classes/Lua_Code/main.lua
Classes/Lua_Code/luaBase.lua

main.lua尝试按如下方式要求luaBase.lua -

require('luaBase')

但它似乎从未找到文件,尽管它与main.lua在同一个文件夹中。

我在日志中收到以下错误

没有字段package.preload ['luaBase'] no file
'./luaBase.lua' no file
'/usr/local/share/lua/5.1/luaBase.lua' no file
'/usr/local/share/lua/5.1/luaBase/init.lua' no file
'/usr/local/lib/lua/5.1/luaBase.lua' no file
'/usr/local/lib/lua/5.1/luaBase/init.lua' no file
'./function/luaBase.lua' no file './luaBase.so' no file
'/usr/local/lib/lua/5.1/luaBase.so' no file
'/usr/local/lib/lua/5.1/loadall.so'

我已经尝试了这里的每个其他建议,但没有任何作用。

有人能帮忙吗?

点赞
用户1545663
用户1545663

我已经弄明白了 -

在 Objective-C 中 - 我执行如下操作:(self runLua: 是一个方法,它将 NSString 中的文本作为 lua 命令运行)

NSString *bundlePath = [[NSBundle mainBundle] resourcePath];
[self runLua:[NSString stringWithFormat:@"appPath = '%@/?.lua'",bundlePath]];

之后在 Lua 中 - 我执行如下操作:

package.path = appPath
require('test')

最后 - Lua 知道在哪找到这些文件!

2014-07-12 14:42:16