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

AWS CDK创建S3EventSource提示Bucket缺少`_resource`属性如何解决?

问题原因

你的错误是项目中AWS CDK相关依赖包版本不一致导致的。从package.json配置可以看到,@aws-cdk/aws-s3版本固定为1.95.1,而@aws-cdk/core、@aws-cdk/aws-lambda-event-sources等依赖版本是1.127.0,不同版本的CDK包会拉取自身依赖的子包,导致项目中存在两份不同版本的aws-s3包实例,两个版本的Bucket类类型不兼容,就触发了TypeScript类型校验错误。


解决步骤

  1. 统一所有CDK相关依赖的版本号,确保@aws-cdk/开头的所有包版本完全一致。你可以把package.json中的依赖修改为以下配置(全部对齐1.127.0版本即可):
"dependencies": {
    "@aws-cdk/aws-lambda": "^1.127.0",
    "@aws-cdk/aws-s3": "^1.127.0",
    "@aws-cdk/aws-lambda-event-sources": "^1.127.0",
    "@aws-cdk/aws-lambda-nodejs": "^1.127.0",
    "@aws-cdk/core": "^1.127.0"
},
"devDependencies": {
    "@aws-cdk/assert": "^1.127.0",
    "@types/jest": "^26.0.10",
    "@types/node": "10.17.27",
    "aws-cdk": "^1.127.0",
    "jest": "^26.4.2",
    "ts-jest": "^26.2.0",
    "ts-node": "^9.0.0",
    "typescript": "~3.9.7"
}
  1. 删除项目中的node_modules文件夹和package-lock.json文件(如果用yarn则删除yarn.lock)。
  2. 重新执行npm install安装依赖。
  3. 再次执行npm run cdk deploy即可正常部署。

你也可以选择升级到CDK v2版本,所有AWS服务的构造都打包在单一的aws-cdk-lib包中,从根本上避免版本不一致的问题。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 13:45:05