скажем, у меня есть два файла test.lua
и m.lua
в папке, в test.lua
как:
require("m")
, затем я запускаю этот файл, однако при этом возникает ошибка:
lua: /Users/xx/works/scripts/test.lua:43: module 'm' not found:
no field package.preload['m']
no file '/usr/local/share/lua/5.3/m.lua'
no file '/usr/local/share/lua/5.3/m/init.lua'
no file '/usr/local/lib/lua/5.3/m.lua'
no file '/usr/local/lib/lua/5.3/m/init.lua'
no file './m.lua'
no file './m/init.lua'
no file '/usr/local/lib/lua/5.3/m.so'
no file '/usr/local/lib/lua/5.3/loadall.so'
no file './m.so'
Как видите, появляется строка no file './m.lua'
, но это не так. ./m.lua
существует, и права доступа к файлам в порядке. Если я жестко закодирую путь:
package.path = package.path..';'..'/Users/xx/works/scripts/?.lua'
require('m')
Он будет работать как положено.
Что мне нужно сделать, чтобы lua произвел поиск в текущем каталоге (например, при импорте python), когда требуется модуль