Google App Engine ImportError:没有名为的模块

问题描述 投票:0回答:1

我正在Google App引擎中创建一个Python Web App。当我

sudo pip安装

第三方库,然后尝试导入它,我收到错误'ImportError:没有名为x的模块'。其中x是该库的名称。以我的例子为例:Boto,Boto3,Fask等。

如果我在GAE中进入shell并键入python >> import X,则可以在python环境中使用该库。在Google App Engine的virtaul服务器中部署应用程序或运行应用程序时,我收到模块导入错误。

  • 我甚至尝试过这样的方法:python >> import sys >> sys.path.insert(0,“path_here”)
  • 导出PYTHONPATH并选择这些库所在的位置

我甚至在Stackoverflow中关注了几个Q&A而没有任何成功,有人可以给我一个正确的方法来修复Google App Engine中的导入错误吗?

FYI

  • 我没有在我的电脑中使用任何本地环境,我直接通过GAE bash控制台,GAE中的启动代码编辑器工作,我正在运行命令dev_appserver.py $ PWD
  • 当我做

pip冻结

我可以看到模块当前已在GAE虚拟环境中安装和部署。我的路径有问题吗?使GAE加载我已经安装的第三方库的最佳方法是什么。

更新:从Google App Engine直接在python shell上导入库工作正常。在我的python应用程序index.py文件上导入库会导致错误。 Python import directly from Shell Python import to the index.py file

python python-2.7 google-app-engine boto
1个回答
0
投票

虽然这是一个旧线程,但现在添加这个答案:

运行命令:gcloud组件列表

这将显示安装的不同组件,而不是您的环境。

如果未安装,请安装app-engine-python组件:

gcloud组件安装app-engine-python

gcloud组件安装app-engine-python-extras

如果它不起作用:

在Windows中,卸载并下载并安装Google-sdk(查看所需的python版本)。删除安装程序要求您在上一步中删除的所有文件,然后再次运行gcloud组件命令。

© www.soinside.com 2019 - 2024. All rights reserved.