我试图在文件名提到 here之后使用该方法命名lua包,但是从未定义_REQUIREDNAME.例如,我有这两个文件 samplePackage.lua: print("_REQUIREDNAME: ", _REQUIREDNAME)return nil; packageTest.lua: require "samplePackage
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).