在Ubuntu 11.04上设置Google App Engine的错误

时间:2011-08-22 23:18:15

标签: google-app-engine

所以我按照This指南使用了一个简单的打印python文件。问题是,当我通过eclipse或终端运行我的dev_appserver.py文件时,会出现以下错误:

/Desktop/%/google/google_appengine/dev_appserver.py
Traceback (most recent call last):
  File "/Desktop/%/google/google_appengine/dev_appserver.py", line 77, in <module>
 run_file(__file__, globals())
File "/Desktop/%/google/google_appengine/dev_appserver.py", line 73, in run_file
execfile(script_path, globals_)
File "/Desktop/%/google/google_appengine/google/appengine/tools/dev_appserver_main.py",    line 154, in <module>
from google.appengine.tools import appcfg
 File "/Desktop/%/google/google_appengine/google/appengine/tools/appcfg.py", line 68, in <module>
from google.appengine.tools import appengine_rpc
File "/Desktop/%/google/google_appengine/google/appengine/tools/appengine_rpc.py", line 27, in <module>
import fancy_urllib
File "/Desktop/%/google/google_appengine/lib/fancy_urllib/fancy_urllib/__init__.py", line 341, in <module>
class FancyHTTPSHandler(urllib2.HTTPSHandler):
AttributeError: 'module' object has no attribute 'HTTPSHandler'

还有其他人有类似的经历吗?

2 个答案:

答案 0 :(得分:1)

我认为ubuntu 11.04使用Python3所以模块HTTPSHandler现在是urllib.request.HTTPSHandler source

Google AppEngine目前只支持Python2.5。所以你需要安装Python2.5

编辑(抱歉,你的指南中你已经安装了python2.5):

在你的情况下,我认为你总是使用python 3的环境。

  1. 尝试使用python 2.5执行shell以检查它是否正确安装:python2.5
  2. 尝试使用此命令python2.5 {GAE_DIR_ROOT}/dev_appserver.py
  3. 启动dev_appserver

答案 1 :(得分:1)

Ubuntu 11.04附带python 2.6作为默认版本。建议使用版本为2.5的Google应用引擎。我使用它多年来使用python 2.6没有任何问题。

为了使用python 2.6顺利执行它,您需要做的是编辑google/appengine/tools/dev_appserver.py并添加这三行

  '_counter',
  '_fastmath',
  'strxor',

'XOR',之后和第{13}行之前的'_Crypto_Cipher__AES',之前。