繁体   English   中英

未找到无服务器命令“离线”

[英]Serverless command "offline" not found

我正在运行我的nodejs代码并且还安装了无服务器( npm i -g serverless )但是在使用命令sls offline start --CacheInvalidations运行它时,我收到以下错误:-

无服务器错误 ----------------------------------------

未找到无服务器命令“离线”。 您指的是 “config” 吗? 运行“无服务器帮助”以获取所有可用命令的列表。

得到支持 - - - - - - - - - - - - - - - - - - - - - -

 Docs:          docs.serverless.com
 Bugs:          github.com/serverless/serverless/issues
 Issues:        forum.serverless.com

您的环境信息---------------

 Operating System:          linux
 Node Version:              12.18.2
 Framework Version:         1.79.0
 Plugin Version:            3.7.1
 SDK Version:               2.3.1
 Components Version:        2.34.6

您需要使用 npm 安装 serverless serverless-offline插件才能使用sls offline命令。

只需简单地运行:

npm i -g serverless-offline

在您的设备上全局安装或

npm i serverless-offline --save-dev

将其安装为活动项目中的开发依赖项。 然后将此配置添加到您的无服务器模板中:

plugins:
  - serverless-offline

有关serverless-offline插件的更多信息,请查看 serverless 官方文档:

无服务器离线 | 在开发无服务器项目时在本地模拟 AWS λ 和 API 网关

无服务器离线 NPM

在使用 nodejs 设置 serverless.yml 并在本地运行它时,我遇到了同样的问题。 两个步骤解决了这个问题。

  1. 全局安装 serverless-offline package。

npm i -g serverless-offline

  1. 在 serverless.yml 文件的插件键下添加相同的 package。

plugins:
- serverless-offline

您必须安装 package(或在您的项目中本地或全局)。 我建议全局安装。

npm i -g serverless-offline

或者

yarn global add serverless-offline

在 serverless.yml 文件中,在插件 session 中添加以下代码:

插件:

  • 无服务器离线

它会解决你的问题

不知道你是否解决了这个问题,但我遇到了同样的问题,对我来说这是一个愚蠢的错误,YML 文件的缩进是错误的,在修复缩进后它开始工作得很好

使用yarn安装依赖项,您可以运行以下命令:

安装:

yarn add serverless-offline -D

跑:

yarn serverless offline start

首先,您必须在全球范围内离线安装无服务器。

npm i -g serverless-offline

接下来,您应该检查 serverless.yml 文件。 否则,您必须创建一个 serverless.yml 文件。

service: your-service-name
app: app-name
provider:
  name: aws
  runtime: nodejs10.x
  timeout: 60
  memorySize: 128
  deploymentBucket: bucket-name
# you can overwrite defaults here
  stage: prod
  region: your-aws-region
functions:
  your-function-name:
    handler: handler.dispatch
    memorySize: 128
    timeout: 60
    events:
      #- http: POST /hello
      - http: 'ANY {proxy+}'
plugins:
  - serverless-offline
  - serverless-aws-alias
  1. 确保已安装 serverless-offline(全局或在项目中)
  2. 将这些行添加到 serverless.yml

 plugins: # Needed to run & debug locally - serverless-offline

在您的项目中尝试使用npx前缀。 所以npx sls offlinenpx serverless offline 它对我有用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM