Lua Требуется функция с полным именем пути
Мне нужно вызвать require в файле lua, который не всегда будет в одном месте. Я пытался вызвать запрос на полное имя пути, но это, похоже, не работает. Я даже попытался заменить один из моих рабочих нормальных требует с правильным полным именем пути к тому же файлу
изменение примера требуют "foo"
в требуется "C:\Users\Me\MyLuaProject\foo"
но когда я переключил его на полное имя пути, он больше не мог его найти. Поэтому мне интересно, можете ли вы даже позвонить по полному пути, и если не так, как бы добиться того же результата по-другому?
Ответы
Ответ 1
Добавьте каталог, содержащий файл, в package.path:
package.path = package.path .. ";C:\\Users\\Me\\MyLuaProject"
require "foo"
Вы также можете добавить его в переменную окружения LUA_PATH, но это, вероятно, менее легко изменить на лету.
Общим шаблоном для модулей является abc.lua и abc/xyz.lua; чтобы потребовать файлы в подобном подобном подкаталоге, используйте следующее:
require "abc"
require "abc.xyz"
Ответ 2
Если вам просто нужно загрузить файл, используйте dofile
, который принимает путь:
dofile("C:\\Users\\Me\\MyLuaProject\\foo")