我正在我的 Mac 上使用 GoogleAppEngineLauncher 浏览 GAE webapp2 教程(运行时 2.7),虽然我完全按照所有内容进行操作,但在我们导入 Jinja2 模块时仍然出现错误:Using Templates - Google App Engine
错误:
Traceback(最近一次调用最后一次):文件“/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py”,第 168 行,在句柄处理程序中= _config_handle.add_wsgi_middleware(self._LoadHandler()) 文件“/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/runtime/wsgi.py”,第 206 行,在 _LoadHandler 处理程序 = 导入(路径 [0])文件“/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 640 行,在装饰返回 func(self, *args, **kwargs) 文件 "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 1756 行,在 load_module 返回 self.FindAndLoadModule(submodule, fullname, search_path) 文件“/Applications/ GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py",第 640 行,装饰返回 func(self, *args, **kwargs) 文件" /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 1628 行,在 FindAndLoadModule 描述中)文件“/Applications/GoogleAppEngineLauncher.app/内容/资源/GoogleAppEngine-default。bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 640 行,在装饰中返回 func(self, *args, **kwargs) 文件“/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine -default.bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 1571 行,在 LoadModuleRestricted 描述中)文件“/Users/ykessler/Dropbox/appgrinders/gae_apps/helloworld2.7/helloworld.py” ,第 9 行,在 import jinja2 ImportError: No module named jinja2bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 1571 行,在 LoadModuleRestricted 描述中)文件“/Users/ykessler/Dropbox/appgrinders/gae_apps/helloworld2.7/helloworld.py”,第 9 行, 在 import jinja2 ImportError: No module named jinja2bundle/Contents/Resources/google_appengine/google/appengine/tools/dev_appserver_import_hook.py”,第 1571 行,在 LoadModuleRestricted 描述中)文件“/Users/ykessler/Dropbox/appgrinders/gae_apps/helloworld2.7/helloworld.py”,第 9 行, 在 import jinja2 ImportError: No module named jinja2
所以它出于某种原因找不到该模块,即使它应该被打包为 webapp2 的附加功能的一部分。当我在我的文件系统上进行搜索时,它看起来就在那里:
/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2/webapp2_extras/jinja2.py
如果我将应用程序部署到 GAE,它就可以正常工作。为什么会在本地失败?