2013-03-25 9 views
4

가상 환경에 프로젝트를 설치하려고합니다. 나는 '여기python에서 zope.interface.registry의 가져 오기 오류가 발생했습니다.

>>> import pkg_resources 
>>> pkg_resources.get_distribution("zope.interface").version 
'4.0.1' 
>>> from zope.interface.registry import Components 

from zope.interface.registry import Components, 내가 (안 가상 ENV) 내 컴퓨터에서 같은 시도 4.0.5

>>> import pkg_resources 
>>> pkg_resources.get_distribution("zope.interface").version 
'4.0.5' 

으로 오류이 모듈의

from zope.interface.registry import Components 
Traceback (most recent call last): 
    File "<console>", line 1, in <module> 
ImportError: No module named registry 

버전을 바랬다 - 무엇입니까 오류를주지 마라. this

QUOTE: 3.8.0 (2011-09-22) 
New module zope.interface.registry. This is code moved from 
zope.component.registry which implements a basic nonperistent component registry 
as zope.interface.registry.Components. 

에 따르면, 오류가 없어야합니다. 어떤 제안이 내가 여기에 누락되었거나이 오류를 해결하는 방법?

+0

새로운 virtualenv를 재현 할 수 없습니다. 'ls lib/python */site-packages/zope/interface'에있는'registry.py' 파일을 볼 수 있습니까? –

+0

virtual env에 프로젝트를 설치하기 전에 시스템에 zope을 설치했습니다. 내 가상 및 가상이 아닌 환경에서 가져온 모듈 (zope.interface)의 경로를 확인했습니다. 가상''/usr/lib/python2.7/dist-packages/zope/interface/__ init __. pyc''이고 비 가상은'/usr/local/lib/python2.7/dist-packages/zope.interface- 4.0.1-py2.7-linux-x86_64.egg/zope/interface/__ init __. pyc'. 비 가상 위치에서만'registry.py'를 찾을 수 있습니다 – Netro

+0

가상 env에서'ls' 명령은 당신에게 거기에 있음을 알리는 것은 무엇입니까? 'import zope.interface; print (zope.interface .__ file __)는 무엇을 말합니까? –

답변

4

비슷한 오류가있었습니다. 사이트 패키지가없는 새로운 가상 env를 만들려고 시도했습니다. 그것은 모든 괜찮아요 만듭니다. 하지만 우분투는 이미 자신의 사용을 위해 zope.interface을 설치 했으므로 내 venv에 추가로 설치하고 싶지 않았습니다.

이 충돌 mod_wsgi에 아래에 간단한 테스트 응용 프로그램에 오류가 발생 내 venv 원인 :

 from zope.interface.registry import Components 
ImportError: No module named registry 

그래서 기본 파이썬에서 zope.interface을 제거하려고합니다. 하지만 명령을 unistall 제거하지 (나는 구글에서 발견, 그것은 알려진 문제입니다).

나는 해결책을 발견보다 : 난 그냥 내 venv로 전환하고 거기에서 zope.interface "업그레이드"에 대한 명령을 제공 :

(env)[email protected]:~/env$ sudo pip install --upgrade zope.interface 

zope.interface dissmiss이 내 문제 후.

귀하의 문제는 유사하므로 내 솔루션이 도움이 될 수 있습니다. 어쨌든이 답변은 우분투 데스크탑 사용자에게 매우 유용합니다.