Под lua, как я могу проверить атрибуты файла, только если установлен пакет LuaFileSystem

У меня есть некоторый код, который использует LuaFileSystem. Однако не на всех системах, на которых он будет работать, установлена ​​LuaFileSystem. Я хотел бы проверить, если он установлен, и только запустить код, если он есть. Примерно так (но это не получается и утверждает, что lfs является нулевым значением)

local lfsExists, lfs = pcall(function () require "lfs" end)
if lfsExists then
    local lastUpdateTime = lfs.attributes( mapFilePName ).modification
end

1 ответ

Решение

Эта pcall-ed функция не возвращает никаких значений. Капля , lfs,

Также вам не нужна анонимная функция.

local lfsExists = pcall(require, "lfs")

Или использовать возвращаемое значение из require вместо (неявного) глобального.

local lfsExists, lfs = pcall(require, "lfs")
Другие вопросы по тегам