2017-04-06 2 views
1

내가을 수행 할 때 foobar/__init__.py파이썬 포장 : 하위 디렉토리는

from . import foo 
from . import bar 

from setuptools import setup 

setup(
    name='foobar', 
    version='0.0.1', 
    packages=['foobar'], 
    ) 

setup.py을 읽고 레이아웃

setup.py 
foobar/ 
    __init__.py 
    foo.py 
    bar/ 
     __init__.py 

와 파이썬 프로젝트가 설치되어 있지 예상대로3210은 소스 디렉토리에서 모두 작동합니다. pip install .를 통해 패키지를 설치할 때, 하위 폴더 bar/ 가져 오기 오류

ImportError: cannot import name bar 

어떤 힌트로 이어지는 설치되지입니까?

+0

내가 바 폴더하지 파이썬 파일 (평) 맞아 – shiva

+0

생각합니다. 왜 이것은 설치를 해칠까요? HTTPS : –

+0

__init__.py http://stackoverflow.com/questions/1944569/how-do-i-write-good-correct-package-init-py-files – shiva

답변

2

분명히 포함하는 서브 패키지, 당신은 find_packages()이 필요합니다

from setuptools import setup, find_packages 

setup(
    name='foobar', 
    version='0.0.1', 
    packages=find_packages() 
    ) 

이 이것은뿐만 아니라 the setuptools docs에 좋습니다.

+0

정확한 링크이 링크를 시도 //setuptools.readthedocs을 .io/EN/최신/setuptools.html 번호 사용하여 찾기 - 패키지 – deepelement

+0

@deepelement 감사, 대답을 업데이트했습니다. –

관련 문제