lua package.path的使用

2022-12-19,,

需要用lua写一个工具,c++调用lua,然后这个lua要require其他lua脚本,在主lua里面设置package.path,但一直都失败,甚至lua都无法编译通过。

project_path = cpp_getProjectPath()

local path = project_path.."/?.lua;"
package.path = package.path ..";".. path

require "test"

网上查了很多也没找到,偶然想到是不是因为没有open对应的lua库所以lua调用不成功(新手一枚)?

然后在 c++里面加上

    lua_pushcfunction(L, luaopen_package);
lua_pushstring(L, LUA_IOLIBNAME);
lua_call(L, , );
lua_pop(L, -);

然后再次运行,done!

其实上面这种一个个打开对应的库不是非常灵活,最好一次加载所有库,免得遇到这类问题还得回查是不是c部分忘了加载lua库,

//一次打开所有的库
luaL_openlibs(L);

lua package.path的使用的相关教程结束。

《lua package.path的使用.doc》

下载本文的Word格式文档,以方便收藏与打印。