2013-03-09 71 views
0

我已经给予了我在lua教授任务的一些框架代码。代码有几个要求将语句添加到当前目录的语句。我遇到的问题是,其中许多需要语句不需要.lua文件,它们需要包含许多lua文件的目录。举例来说,我有在一个单一文件的目录qtwidget:init.luaLua需求不能在目录上工作

在框架代码,这个包是这样引用:

local w = qtwidget.newwindow(width,height,"Energy surface") 

所以这一切都很好,很正常,但是当我运行骨架代码我得到以下错误:

dofile('/data/mar608/BigData/src/optim/demo2.lua') 
error loading module 'qttorch' from file '/usr/local/pkg/torch/share/torch/lua/qttorch': 
cannot read /usr/local/pkg/torch/share/torch/lua/qttorch: Is a directory 
stack traceback: 
[C]: ? 
[C]: in function 'require' 
/data/me/BigData/src/optim/demo2.lua:36: in main chunk 
[C]: in function 'dofile' 
[string "dofile('/data/mar608/BigData/src/optim/demo..."]:1: in main chunk 
[C]: ? 

发生了什么事?为什么lua不明白这个要求声明?有什么办法可以解决我的package.path变量来解决这个问题吗?我需要能够为许多目录做到这一点(即指定目录名称,并让lua将其所有文件加载到一个单一的名称中,以便稍后参考)

回答

2

1)您有​​?
2)您是否有.../?/init.lua条目在package.path
例如:/usr/local/share/lua/5.2/?.lua;/usr/local/share/lua/5.2/?/init.lua;/usr/local/lib/lua/5.2/?.lua;/usr/local/lib/lua/5.2/?/init.lua;./?.lua