Python ImportError:如何解决Google appengine项目中的“没有名为main的模块”?

时间:2017-10-17 02:39:17

标签: python google-app-engine

我第一次在我的ubuntu系统中设置了一个google appengine项目,并通过阅读在线提供的所有文档使一切工作到现在为止。但是我已经卡住了,它使用命令dev_appserver.py app.yaml在localhost上正常运行但是当我尝试在浏览器上访问我的应用程序时,它会抛出错误:ImportError: No module named main

  

项目结构

-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)
  

错误

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

先谢谢!!

1 个答案:

答案 0 :(得分:0)

首先,在你的第一个App Engine项目上下载脚本(通过将.py个文件放在src/中,我知道这些文件都没有),这会让你感到沮丧更好地避免,直到你有一个成功的项目。

简单的方法是将src/中的文件向上移动一级。但如果你真的,真的想坚持使用src/,那么请尝试将__init__.py添加到src/,然后将app.yaml更改为

url: /.*
    script: src.main.app
    secure: always