You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用AWS Amplify CLI添加Lambda函数时遇版本相关错误求助

AWS Amplify CLI添加Lambda函数时跨版本报错的解决思路

我在使用AWS Amplify CLI添加Lambda函数时遇到跨版本报错问题,项目依赖的aws-amplify版本为4.3.46,具体错误如下:

  • CLI 12.12.0版本:执行npm i @aws-amplify/cli@latest -g安装后,运行amplify add function,选择Lambda函数后流程突然终止,报错:
    🛑 There was an error adding the function resource
    
  • CLI 9.2.1版本:安装该版本后执行相同命令,出现类型错误:
    TypeError: Cannot read property 'toLowerCase' of undefined
    at autogeneratedParameters (/snapshot/repo/build/node_modules/amplify-category-function/lib/provider-utils/awscloudformation/service-walkthroughs/autogeneratedParameters.js:7:35)
    

解决思路

  1. 清理Amplify CLI缓存
    跨版本切换CLI容易残留缓存文件引发冲突,执行以下命令清理:

    amplify cache clear
    rm -rf ~/.amplify
    

    清理完成后重新尝试amplify add function。

  2. 检查项目Amplify配置完整性
    确认项目根目录的amplify/.config/project-config.json和amplify/team-provider-info.json文件无损坏或缺失关键字段(如projectName、envName、awscloudformation配置)。若文件异常,可从备份恢复,或备份现有资源后重新初始化项目。

  3. 匹配CLI与aws-amplify版本兼容性
    aws-amplify v4.x对应的CLI版本建议选择8.x~10.x区间,避免最新版或过旧版本。比如尝试安装CLI 10.8.0版本:

    npm uninstall -g @aws-amplify/cli
    npm i @aws-amplify/cli@10.8.0 -g
    

    安装完成后重新执行amplify configure登录AWS账号,再尝试添加函数。

  4. 手动创建Lambda函数配置文件
    如果交互式命令持续失败,可手动在amplify/backend/function目录下创建函数文件夹,参考现有函数目录结构(若有)编写function.json和template.yml配置文件,之后运行amplify push触发部署。

  5. 检查Node.js版本兼容性
    不同Amplify CLI版本对Node.js版本有明确要求:

    • CLI 9.x建议使用Node.js 14.x/16.x
    • CLI 12.x建议使用Node.js 16.x/18.x
      可通过nvm切换符合要求的Node.js版本:
    nvm use 16
    

内容的提问来源于stack exchange,提问作者user42195

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 05:48:10