我试图在文件名提到
here之后使用该方法命名lua包,但是从未定义_requiredNAME.例如,我有这两个文件
samplePackage.lua:
print("_requiredNAME: ",_requiredNAME) return nil;
packageTest.lua:
require "samplePackage"
当我运行packageTest.lua时,它输出> _requiredNAME:无
我也在Lua 5.1 Refrence手册中找不到_requiredNAME的提及,所以这是从语言中删除了,还是我遗漏了什么?
解决方法
包和模块的工作方式在Lua 5.1中经历了一些重大变化,使得Lua中的第一版编程在该主题上几乎已经过时.
在5.1中,模块名称作为参数通过require传递给模块.您可以使用…访问它:
print("Module name: ",...)
Lua中的second edition编程涵盖了Lua 5.1.它不是免费的,但关于包和模块的章节是available as a sample (PDF).