Lua - 直接打包到父目录中另一个文件夹的路径

时间:2015-01-30 18:32:36

标签: path lua package

我有一个目录:

-parent
    -target
    -current
        -firstChild
            -secondChild

我正在尝试将package.path从“secondChild”内部指向“target”以检索存储在那里的其他.lua文件夹。我目前有这个设置

package.path = package.path .. ';../?.lua;../?.lua;../?.lua;target/?.lua'

那找不到我要找的东西,我确信我的部分问题是我不理解所有的语法。 “; ../?。lua”对我说,我正在回到“firstChild”并检查是否有lua文件?

我在这里缺少什么?

1 个答案:

答案 0 :(得分:1)

根据您的(更新的)目录结构,您需要../../../target/?.lua中的package.path来引用target secondChild文件夹中的模块。 ?.lua将在secondChild进行搜索,../?.lua将在firstChild进行搜索,../../?.lua将在current进行搜索,../../../?.lua将在parent../../../target/?.lua将在target中进行搜索(假设当前目录为secondChild,当您启动脚本并假设-不是目录的一部分时名称)。让../?.lua仅在secondChild的父级中进行搜索并且target/?.lua使搜索发生在secondChild/target/文件夹中,该文件夹不存在。

当您尝试“需要”模块时获得的错误消息包括搜索检查的所有路径,这通常提供了如何修改搜索路径的线索。