通常,当我对与远程软件相关的问题有疑问时,我发现其他人已经问过同样的问题,并且得到了对我也有用的好答案。
不过,这一次,我没能找到解决我困境的办法。
我们开始吧:我目前正在尝试将我的 Lua 编程提升一个或三个级别,并希望使用模块。所以,我有一个这样的结构:
main.lua
foo/bar.lua
现在,在 main.lua 我做
require("foo.bar")
失败了,
main.lua:1 module 'foo.bar' not found:
no field package.preload['foo.bar']
no file 'foo.bar.lua'
no file 'foo.bar.lua'
no file 'foo.lua'
好的,我的可能有问题,package.path
所以我 package.searchpath("foo.bar", package.path)
用来看看我做错了什么。
问题是package.searchpath
解决foo.bar
哪个foo/bar.lua
是完全正确的。
据我了解,package.searchpath 尝试以与 require 相同的方式查找模块,但在我的情况下似乎存在一些故障。
让我感到奇怪的是no file 'foo.bar.lua'
错误输出中的重复
我误解了require的使用吗?
我正在使用 LuaJIT-2.0.0 运行我的块
更新:
我正在使用 LuaJIT-2.0.0 运行我的块 <- 这是我的问题的原因,库存 Lua-5.2.2 的行为符合预期