我是 Google App Engine 的新手,所以我只是按照程序测试了一个只打印“hello world”的应用程序。
(遵循 Google App Engine 文档)
项目文件夹名称是“GoogleApp”
这是我的 Python 文件:
文件名:sayHello.py
#!/usr/bin/env python
def main():
print "hello"
pass
if __name__ == '__main__':
main()
这是yaml文件
文件名:app.yaml
application: GoogleApp
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: sayHello.py
当我在 Google App Engine Launcher 中运行项目时,这是我收到的日志错误
2012-04-19 10:52:23 Running command: "['C:\\Python27\\pythonw.exe', 'C:\\Program Files\\Google\\google_appengine\\dev_appserver.py', '--admin_console_server=', '--port=8080', 'D:\\Code\\Projects\\IRCmathBot\\GoogleApp']"
Traceback (most recent call last):
File "C:\Program Files\Google\google_appengine\dev_appserver.py", line 125, in <module>
run_file(__file__, globals())
File "C:\Program Files\Google\google_appengine\dev_appserver.py", line 121, in run_file
execfile(script_path, globals_)
File "C:\Program Files\Google\google_appengine\google\appengine\tools\dev_appserver_main.py", line 157, in <module>
from google.appengine.tools import appcfg
File "C:\Program Files\Google\google_appengine\google\appengine\tools\appcfg.py", line 41, in <module>
import mimetypes
File "C:\Python27\lib\mimetypes.py", line 29, in <module>
import urllib
File "C:\Python27\lib\urllib.py", line 26, in <module>
import socket
File "C:\Python27\lib\socket.py", line 47, in <module>
import _socket
ImportError: Module use of python25.dll conflicts with this version of Python.
2012-04-19 10:52:25 (Process exited with code 1)
实际上,我使用的是 Python 2.7。上面的日志说 python25.dll 与 python 版本冲突。
我不知 Prop 体是什么意思,但我可以理解
- 它应该只支持 python 2.5 或
- 我应该使用 python 2.5 代码。
因为第二个不可能,而且 Google 支持 2.7,我不知道这个错误是什么。
试图弄清楚自己,但未能成功。
最佳答案
我有一个非常相似的问题(在运行教程代码时),并通过检查我的 PythonPath 系统环境变量解决了它。
对我来说,OpenCV 编辑了 PythonPath 变量以指向它自己的目录结构,而不是基本的 Python 安装本身。
您可以通过打开“高级系统属性”窗口并单击“环境变量”按钮来编辑环境变量。 “系统变量”下的“PythonPath”变量。至少,它应该包含 python 可执行文件的路径,例如“C:\Python27\”。
关于google-app-engine - 运行 Google App Engine 测试项目时出现 ImportError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10222342/