Python ImportError:如何解决Google Appengine项目中的“No module named main”?
问题描述:
我已经第一次在我的ubuntu系统中设置了一个google appengine项目,并且通过阅读所有可用的在线文档使所有工作到现在为止。但在这里我已经卡住了,这是正确的本地主机上使用命令运行:dev_appserver.py app.yaml
但是当我试图访问我的浏览器我的应用程序,它抛出的错误:ImportError: No module named main
Python ImportError:如何解决Google Appengine项目中的“No module named main”?
Project Structure
-GAE_Demo
-google_appengine
-src
-handlers.py
-main.py
-app.yaml
-config.json
app.yaml
url: /.*
script: main.app
secure: always
src/main.py
app = webapp2.WSGIApplication(
routes=([('/main', MainHandler)]),
debug=True)
Error
INFO 2017-10-17 01:32:58,464 module.py:821] default: "GET/HTTP/1.1" 500 -
ERROR 2017-10-17 01:56:21,976 wsgi.py:263]
Traceback (most recent call last):
File "/home/path/to/project/GAE_Demo/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
File "/home/path/to/project/GAE_Demo/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
handler, path, err = LoadObject(self._handler)
File "/home/path/to/project/GAE_Demo/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
obj = __import__(path[0])
ImportError: No module named main
在此先感谢!
答
首先,(通过把.py
文件src/
,我知道做哪个没有教程)去你的第一个App Engine的项目关闭脚本,是你设置的是更好地避免,直到你有一个成功的挫折项目在你的腰带下。
简单的方法是将src/
中的文件上移一个级别。但是,如果你真的想坚持src/
,然后尝试将__init__.py
到src/
,并改变你的app.yaml
到
url: /.*
script: src.main.app
secure: always