2012-03-15 3 views
1

저는 자바 프로그래머입니다. 저는 파이썬으로 일부 모듈을 개발하기 시작했습니다. 추상화 계층을 패키지로 나눌려고했으나 unfortunatelly 내부 패키지 (videofactory.py)에서 클래스를 액세스하려고하는 루트 패키지 (hokuspokus.py) 클래스가 있고 ImportError 오류가 발생합니다. media.videofactory라는 모듈이 없습니다.ImportError : No module <module_name>

나는 또한 내 모든 파일이 잘 runned 동일 패키지 (hokuspokus)와 모두에 있었다 테스트를했다 :(

나는, 윈도우와의 PyDev와 Aptana에 스튜디오 3.

파이썬 2.7을 사용하고 있습니다

내 PYTHONPATH를 확인하고 프로젝트의 루트 폴더는 소스 폴더로이 있었다 나는이 모듈과의 PyDev CONFIGS에 대한 모든 내 코드와 구글 코드 프로젝트를 만든 :. http://code.google.com/p/hokuspokus-py/source/checkout

Package Structure: 
HokusPokus (source folder) 
| 
----hokuspokus (root package) 
    | 
    --- media (inner package) 
    | | 
    | ----videofactory.py 
    | 
    | 
    ---- hokuspokus.py 
+1

+1 실제로 [SSCCE] (http://sscce.org)를 제공하고 심지어 링크하는 경우. 그러나 'hokuspokus/media/mediafactory.py'를 찾을 수 없습니다. – phihag

+0

Aptana Studio 또는 셸에서 코드를 실행할 때 오류가 발생합니까? –

+0

@burhan 나는 Aptana에서 뛰고있다 – ArturEld

답변

2

시도 :

from media.videofactory import VideoFactory 

수입은 싶어 수입 모듈의 모든 요소가 유 사용할 수있는 경우 모듈 중 구체적인 클래스 :

from media.videofactory import * 

하지만하지 최선의 방법.

+1

예! 그것은 효과가 있었다. 흥미롭게도, 내 모든 가져 오기는 CTRL + SHIFT + O에서 일컬어지는 클래식 단축키를 사용하고 루트 클래스에서는 'hokuspokus.media.videofactory import VideoFactory'에서 추가했습니다. 나는 네가 말했듯이 나는 importev에서 루트 패키지 (hokuspokus)를 제거하고 아름답게 runy erything했다. 감사 – ArturEld

관련 문제