我正在开发一台Windows机器上的gae应用程序。有会话处理我下载了gaeutilities并将其路径(C:\ Python25 \ Lib \ site-packages \ gaeutilities-1.2.1)添加到注册表(python25下的“PythonPath”项目)。
在我的代码中,这是我导入gaeutilities Session类的方式:
来自appengine_utilities.sessions导入会话
当gae引擎(dev_appserver.py)尝试导入它时,会引发异常,说明importerror并且“没有名为appengine_utilities.sessions的模块”
另一方面,pyscripter可以找到模块(自动完成变得可用于Session类),我可以在python解释器中导入模块(与dev_appserver使用的模块相同,python 2.5.4)。
为了解决问题,我创建了一个PYTHONPATH环境变量,并添加了它的路径。没有什么变化。
我迷路了。我做错了什么?
重要编辑:我发现自己完全无法导入任何第三方gae模块。 PYTHONPATH是正确的,sys.path是正确的,注册表是正确的,仍然dev_appserver抱怨importerror。
答案 0 :(得分:1)
奇怪。
我会开始排除故障,100%确保sys.path
使用的dev_appserver.py
确实包含C:\Python25\Lib\site-packages\gaeutilities-1.2.1
。
我建议您在sys.path
提供的HTML视图中显示dev_appserver.py
。
检查gaeutilities-1.2.1目录和子目录的权限。也许python解释器无法创建*.pyc
文件或类似的东西。
另一个建议:
将appengines_utilities
文件夹放在应用程序目录(包含app.yaml文件的目录)中。如果您想将代码上传到谷歌的服务器,我想你还需要所有第三方的东西。