2012-05-03 2 views
4

내 App Engine 응용 프로그램을 Python 2.7 런타임으로 이동하려고합니다.파이썬 2.7에서 deferred.defer 사용

SDK 버전 1.6.5를 사용하여 google.appengine.ext.deferred 라이브러리를 가져올 때 아래에 추적 표시가 나타납니다. 또한 응용 프로그램을 업로드하려고 시도하고 런타임에 비슷한 오류가 표시됩니다.

누구든지 Python 2.7에서 지연 라이브러리를 사용합니까? 비슷한 문제가있는 사람이 있습니까?

편집

내 자신의 질문에 대답합니다. 내 응용 프로그램에 webapp2 (이전 버전 일 수도 있음)의 자체 버전이 있었고 webapp2을 라이브러리 섹션의 app.yaml에 추가하면 문제가 해결되었습니다. 트레이스 백이 지연된 라이브러리가 올바른 버전의 webapp을 가져 오는 것으로 보이는 이유는 모르겠습니다. ... 올바른 webapp.py 섀도 잉 파이썬 클래스 경로에 사용자 정의 webapp.py이처럼 보이는

File ".../units/unitsSchema/styleModel.py", line 30, in <module> 
    from google.appengine.ext import deferred 
    File "/base/python27_runtime/python27_lib/versions/1/google/appengine/ext/deferred/__init__.py", line 29, in <module> 
    from deferred import * 
    File "/base/python27_runtime/python27_lib/versions/1/google/appengine/ext/deferred/deferred.py", line 266, in <module> 
    class TaskHandler(webapp.RequestHandler): 
AttributeError: 'module' object has no attribute 'RequestHandler' 

답변

2

: 역 추적

.

현재 문제없이 새로운 Python 2.7 런타임에서 지연 라이브러리를 사용하고 있습니다.
나는 나의 app.yamlbuiltins 섹션에 설정 한 :

builtins: 
    - deferred: on 
+0

감사합니다. 내 app.yaml의 기본 제공 섹션에서 연기했습니다. – user1373591

+1

내 질문에 대답하고 싶습니다. 내 응용 프로그램은이 버전을 제거하고'app.yaml'의'libraries' 섹션에'webapp2'를 추가하는 자체 버전의'webapp2' (어쩌면 구 버전)를 가지고있었습니다. , 나는 왜 확실하지 않다. – user1373591

0

저도 같은 문제가 발생했습니다. 나는 많은 방법을 시도했다. 마지막으로, 나는 그것을 해결했다. 그것은 webapp2 버전 문제입니다. app.yaml 파일에 webapp2 라이브러리가 있습니다. 이 카드 만 사용하십시오. deps에서 webapp2를 가져 오지 마십시오.

관련 문제