_REQUIREDNAME总是为零

时间:2010-05-19 22:13:51

标签: lua packages

我正在尝试使用该方法在提到here的文件名后命名lua包,但永远不会定义_REQUIREDNAME。例如,我有这两个文件

samplePackage.lua:

print("_REQUIREDNAME: ", _REQUIREDNAME)
return nil;

packageTest.lua:

require "samplePackage"

当我运行packageTest.lua时,它会输出> _REQUIREDNAME: nil

我也在Lua 5.1 Refrence手册中找不到_REQUIREDNAME的提及,所以这是从语言中删除了,还是我遗漏了什么?

1 个答案:

答案 0 :(得分:11)

软件包和模块的工作方式在Lua 5.1中经历了一些重大变化,使得Lua中的第一版编程在该主题上几乎已经过时。

在5.1中,模块名称作为参数传递给模块require。您可以使用...

访问它
print("Module name: ", ...)

Lua中的second edition编程涵盖了Lua 5.1。它不是免费的,但有关包和模块的章节是available as a sample (PDF)