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

使用虚拟环境执行cdk diff时出现ModuleNotFoundError: No module named 'aws_cdk'

AWS CDK cdk diff 报错 ModuleNotFoundError: No module named 'aws_cdk' 排查方案

问题场景

在VS Code中使用Virtualenv配置AWS CDK Python项目,执行以下步骤后:

  • 安装Node.js及全局aws-cdk CLI
  • 安装Python3并创建虚拟环境.venv
  • 激活虚拟环境后安装requirements.txt(含aws-cdk-lib==2.56.1、constructs>=10.0.0,<11.0.0)和requirements-dev.txt依赖
  • 运行cdk diff时抛出ModuleNotFoundError: No module named 'aws_cdk'

但VS Code可通过Ctrl+点击跳转至aws_cdk代码,虚拟环境目录.venv/Lib/site-packages下也存在aws_cdk文件夹。

排查与解决步骤

1. 确认CDK CLI使用的Python环境

CDK CLI可能未关联到虚拟环境的Python解释器:

  • 激活虚拟环境后,执行命令查看当前Python路径:
    # macOS/Linux/WSL
    which python
    # Windows
    where python
    
  • 运行cdk doctor,检查输出中Python字段的路径是否与上述路径一致
  • 若不一致,设置环境变量指定虚拟环境的Python路径:
    # macOS/Linux/WSL
    export CDK_PYTHON=.venv/bin/python
    # Windows
    set CDK_PYTHON=.venv\Scripts\python.exe
    
    之后重新执行cdk diff

2. 验证虚拟环境激活状态

  • 确认运行cdk diff前,终端提示符前有.venv标识(说明虚拟环境已激活)
  • Windows系统注意使用正确的激活命令:.venv\Scripts\activate,而非类Unix系统的source .venv/bin/activate

3. 重装依赖并验证

  • 激活虚拟环境后,卸载现有相关依赖:
    pip uninstall -y aws-cdk-lib constructs
    
  • 重新安装项目依赖:
    pip install -r requirements.txt
    
  • 执行pip list,确认aws-cdk-lib和constructs已出现在虚拟环境的依赖列表中

4. 同步VS Code的Python解释器配置

  • 按Ctrl+Shift+P打开命令面板,选择Python: Select Interpreter,选中.venv目录下的Python解释器
  • 重启VS Code终端,确保终端使用的是选中的虚拟环境解释器

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 05:16:22