编辑:正如Carlos下面回答的,这是一个带有无服务器的bug -dynamodb-本地版本0.2.23 (此编辑的版本为0.2.35)。它现在已经解决了,如果您遇到了类似的问题,您应该更新您的依赖项。
我有一个在Serverless框架上开发的AWS函数的工作开发环境,使用DynamoDB (插件:无服务器离线,无服务器-dynamodb)。在删除node_modules和重新安装之后,我失去了启动开发服务器的能力,这是我以前使用serverless offline start时所做的。
serverless offline正常工作,但是如果我试图在本地运行dynamodb,它会引发以下错误:
Reference Error ----------------------------------------
options is not defined
For debugging logs, run again after setting the "SLS_DEBUG=*" environment variable.
Stack Trace --------------------------------------------
ReferenceError: options is not defined
at BbPromise.resolve.then (/Users/pablo/Documents/myProject/node_modules/serverless-dynamodb-local/index.js:164:21)
From previous event:
at PluginManager.invoke (/Users/pablo/.nvm/versions/node/v6.10.3/lib/node_modules/serverless/lib/classes/PluginManager.js:236:22)
at PluginManager.run (/Users/pablo/.nvm/versions/node/v6.10.3/lib/node_modules/serverless/lib/classes/PluginManager.js:255:17)
at variables.populateService.then (/Users/pablo/.nvm/versions/node/v6.10.3/lib/node_modules/serverless/lib/Serverless.js:99:33)
at runCallback (timers.js:672:20)
at tryOnImmediate (timers.js:645:5)
at processImmediate [as _immediateCallback] (timers.js:617:5)
From previous event:
at Serverless.run (/Users/pablo/.nvm/versions/node/v6.10.3/lib/node_modules/serverless/lib/Serverless.js:86:74)
at serverless.init.then (/Users/pablo/.nvm/versions/node/v6.10.3/lib/node_modules/serverless/bin/serverless:39:50)
Get Support --------------------------------------------
Docs: docs.serverless.com
Bugs: github.com/serverless/serverless/issues
Forums: forum.serverless.com
Chat: gitter.im/serverless/serverless
Your Environment Information -----------------------------
OS: darwin
Node Version: 6.10.3
Serverless Version: 1.19.0奇怪的是,如果我转到localhost:8000/ shell,dynamodb正在运行。
有人有类似的问题吗?
发布于 2017-08-09 14:03:43
所以它变成了一个问题,在这里注册并解决了:https://github.com/99xt/serverless-dynamodb-local/issues/120
您可以通过键入npm i serverless-dynamodb-local@0.2.24 --save-dev下载0.2.24版本,如果您使用它作为开发依赖项。
发布于 2018-11-27 13:14:10
首先,将Serverless脱机添加到项目中:
npm install serverless-offline --save-dev然后,在项目的serverless.yml文件中,向插件部分添加以下条目:serverless-offline。如果没有插件部分,则需要将其添加到文件中。
它应该是这样的:
plugins:
- serverless-offline您可以通过运行无服务器命令行检查是否成功安装了插件:
serverless控制台应该将脱机显示为您的Serverless项目中现在可用的插件之一。
然后在您的项目根目录中运行:
serverless offline start or sls offline start.参考链接
发布于 2021-05-20 07:49:53
对我来说,这是一个非常微妙的细节。我把stage设为local。因此,我必须在custom文件的serverless.yml部分中放置以下行:
custom:
dynamodb:
stages:
- localhttps://stackoverflow.com/questions/45578021
复制相似问题