ModuleNotFoundError:没有名为 aws_cdk 的模块

Mon*_*all 21 python python-venv aws-cdk

当我运行时cdk deploy,出现以下错误:

Traceback (most recent call last):
  File "app.py", line 3, in <module>
    from aws_cdk import core
ModuleNotFoundError: No module named 'aws_cdk'
Run Code Online (Sandbox Code Playgroud)

我用 npm 安装了 cdk

npm install -g aws-cdk
Run Code Online (Sandbox Code Playgroud)

我通过以下方式激活了虚拟环境

source .env/bin/activate
Run Code Online (Sandbox Code Playgroud)

我使用的是python3.8。我安装了 aws_cdk 依赖项

pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

编辑 python 文件时,我能够导入 aws_cdk 并成功运行各个函数。我认为问题在于目录cdk/usr

> which cdk
/usr/local/bin/cdk
Run Code Online (Sandbox Code Playgroud)

我认为它使用的是我的 python/usr/bin而不是虚拟环境。如何让 cdk 在我的虚拟环境中使用 python?

编辑:

要求.txt

-e .
Run Code Online (Sandbox Code Playgroud)

小智 14

太长了; .env/bin/pip3.8 install -r requirements.txt在我最后解决了同样的问题

一旦你运行source .env/bin/activate它实际上会寻找Python库.env/lib/python3.8/site-packages(至少对我来说是这样!)。因此,运行cdk ls调用 app.py 将在 venv 站点包中查找 aws_cdk,而不是从系统站点包中查找,只要 .env/pyvenv.cfg 下的“include-system-site-packages = false”即可


P. *_*Str 11

我想你必须订购

python -m pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

这将为您的 CDK 项目安装标准依赖项。


小智 3

您必须重新安装aws_cdk虚拟环境。我希望它有效