gpt4 book ai didi

当 Lua 文件都在同一个文件夹中时,LuaEdit 找不到模块

转载 作者:行者123 更新时间:2023-12-05 00:34:19 24 4
gpt4 key购买 nike

我下载了 LuaEdit 以用作 IDE 和调试工具,但是即使是最简单的事情我也无法使用它。我创建了一个包含 2 个文件的解决方案,所有这些文件都存储在同一个文件夹中。我的文件如下:

--startup.lua

require("foo")

test("Testing", "testing", "one, two, three")


--foo.lua

foo = {}

print("In foo.lua")

function test(a,b,c) print(a,b,c) end

这在我的 C++ 编译器中通过一些嵌入代码访问时工作正常,但是当我尝试在 LuaEdit 中使用相同的代码时,它在第 3 行 require("foo") 崩溃错误说明:
module 'foo' not found:
no field package.preload['foo']
no file 'C:\Program Files (x86)\LuaEdit 2010\lua\foo.lua'
no file 'C:\Program Files (x86)\LuaEdit 2010\lua\foo\init.lua'
no file 'C:\Program Files (x86)\LuaEdit 2010\foo.lua'
no file 'C:\Program Files (x86)\LuaEdit 2010\foo\init.lua'
no file '.\foo.lua'
no file 'C:\Program Files (x86)\LuaEdit 2010\foo.dll'
no file 'C:\Program Files (x86)\LuaEdit 2010\loadall.dll'
no file '.\battle.dll'

我还尝试在将这些文件添加到解决方案之前创建这些文件,但仍然出现相同的错误。我缺少一些设置吗?拥有一个 IDE/调试器会很棒,但如果它不能运行链接函数,它对我来说毫无用处。

最佳答案

问题可能是您的 Lua 文件不在 package.path 中的路径上。 (对于 C 文件,这是 package.cpath )。

我的猜测是 LuaEdit 程序没有在你的文件所在的目录中启动,因此不匹配例如 .\foo.lua。 .

您有 3 个简单的解决方案(从愚蠢到聪明):

  • 找出 LuaEdit 认为的 ./路径,并将文件放在那里。
  • 在正确的目录(包含您的文件的目录)中打开一个终端,然后从那里运行 LuaEdit。
  • 将文件所在的路径添加到 package.path package.cpath 在做任何事情之前require
  • 关于当 Lua 文件都在同一个文件夹中时,LuaEdit 找不到模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10866477/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com