Node.js AWS Lambda can';我找不到我的模块

Node.js AWS Lambda can';我找不到我的模块,node.js,aws-lambda,Node.js,Aws Lambda,我试图在AWS Lambda中对我自己的lib做一个简单的需求,但它找不到。我错过了什么 var a = require('./lib/a'); exports.handler = function(event, context, callback) { callback(null, 'Testing'); } 是的,这在本地测试时有效,但在压缩和部署时无效。我只是压缩文件,而不是目录,删除require可以让它工作 { "errorMessage": "Cannot find

我试图在AWS Lambda中对我自己的lib做一个简单的需求,但它找不到。我错过了什么

var a = require('./lib/a');

exports.handler = function(event, context, callback) {
    callback(null, 'Testing');

}

是的,这在本地测试时有效,但在压缩和部署时无效。我只是压缩文件,而不是目录,删除require可以让它工作

{
  "errorMessage": "Cannot find module './lib/a'",
  "errorType": "Error",
  "stackTrace": [
    "Function.Module._load (module.js:417:25)",
    "Module.require (module.js:497:17)",
    "require (internal/module.js:20:19)",
    "Object.<anonymous> (/var/task/index.js:1:77)",
    "Module._compile (module.js:570:32)",
    "Object.Module._extensions..js (module.js:579:10)",
    "Module.load (module.js:487:32)",
    "tryModuleLoad (module.js:446:12)",
    "Function.Module._load (module.js:438:3)"
  ]
}
{
“errorMessage”:“找不到模块./lib/a”,
“errorType”:“Error”,
“stackTrace”:[
“Function.Module._load(Module.js:417:25)”,
“Module.require(Module.js:497:17)”,
“要求(内部/module.js:20:19)”,
“对象。(/var/task/index.js:1:77)”,
“模块编译(Module.js:570:32)”,
“Object.Module._extensions..js(Module.js:579:10)”,
“Module.load(Module.js:487:32)”,
“tryModuleLoad(module.js:446:12)”,
“Function.Module.\u加载(Module.js:438:3)”
]
}
目录结构: index.js lib/a.js

我正在压缩文件

尝试从AWS Lambda控制台下载您的软件包。您将收到一个zip文件,并尝试在本地计算机上解压缩该文件。你能看到里面有
a.js
lib
文件夹吗


很有可能,您上载的zip文件可能错过了
lib
目录。

“我正在压缩文件,而不是目录”。如果你没有在zip文件中包含
/lib
目录,那么你怎么能指望Lambda找到模块呢?我觉得自己像个十足的白痴。不,它只是不在那里,我正在为Amazon修改一个旧的构建脚本,并且lib目录没有添加到zip文件中。谢谢