当我运行 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'
我用 npm 安装了 cdk
npm install -g aws-cdk
我激活了虚拟环境
source .env/bin/activate
我正在使用 python3.8。我安装了 aws_cdk 依赖项
pip install -r requirements.txt
编辑 python 文件时,我能够导入 aws_cdk 并成功运行各个函数。我认为问题在于 cdk
位于 /usr
目录中:
> which cdk
/usr/local/bin/cdk
而且我认为它使用的是我的 /usr/bin
中的 python 而不是虚拟环境。如何让 cdk 在我的虚拟环境中使用 python?
编辑:
要求.txt
-e .
原文由 MoneyBall 发布,翻译遵循 CC BY-SA 4.0 许可协议
一旦你运行
source .env/bin/activate
它实际上在.env/lib/python3.8/site-packages
上寻找 python 库(至少对我来说是这样!)。因此运行cdk ls
调用 app.py 将在 venv 站点包中查找 aws_cdk,而不是从系统站点包中查找,只要 .env/pyvenv.cfg 下的“include-system-site-packages = false”