Python 没有名为appengine.api的模块
我正在使用GoogleCloud部署一个相对较小但计算密集的Python应用程序。我用的是烧瓶。由于我的应用程序的当前版本非常慢(我没有存储计算值以备将来重用),我希望使用Appengine Memcache。为此,我在python文件中有以下代码行:Python 没有名为appengine.api的模块,python,google-app-engine,memcached,google-cloud-sdk,google-python-api,Python,Google App Engine,Memcached,Google Cloud Sdk,Google Python Api,我正在使用GoogleCloud部署一个相对较小但计算密集的Python应用程序。我用的是烧瓶。由于我的应用程序的当前版本非常慢(我没有存储计算值以备将来重用),我希望使用Appengine Memcache。为此,我在python文件中有以下代码行:来自google.appengine.api import memcache 当我尝试部署此(gcloud-app-deploy)时,部署包会工作大约8-10分钟,然后停止,并出现以下错误:没有名为appengine.api的模块 我已经安装了Go
来自google.appengine.api import memcache
当我尝试部署此(gcloud-app-deploy
)时,部署包会工作大约8-10分钟,然后停止,并出现以下错误:没有名为appengine.api的模块
我已经安装了Google Cloud SDK(/usr/local/Google Cloud SDK
-我在OSX上)。我还安装了Python库:
我在这里研究了一些相关问题并尝试了建议的解决方案:删除
protobuf
,修改$PYTHONPATH
移动目录,以及删除/重新安装。它们似乎都不起作用。也联系了谷歌,但他们只是给我指了指文档 当我遇到同样的问题时,有两件事可能会导致这种情况。(也是OSX)
首先,这是两者中最简单的一种。出于某种原因,名为Protobuf的包喜欢弄乱SDK路径。要摆脱它,只需在终端中输入pip uninstall protobuf(供未来用户使用)
在此之后,只需再次尝试部署。如果仍无法成功部署,请尝试以下操作:
谷歌有一款被称为Appengine Launcher的软件,大部分都是弃用的。您可以使用它为您的项目创建指向sdk的符号链接。为了得到它,你必须下载原件
一旦下载并安装了原始sdk,它就非常简单了。它可能会提示您在初始化时创建新的符号链接,但这通常是不够的。因此,进入顶部菜单,点击启动器并“创建符号链接”以创建更多
在这之后你应该准备好了 请注意,如果您使用的是AppEngine灵活的环境。建议改为使用。还请注意,Memcache在Flex环境中不可用,您必须使用。