setuptools/distutils에 패키지 데이터 포함
setuptools를 사용하여 패키지 설치를 구성할 때 package_data 파일을 통합하는 데 어려움이 발생할 수 있습니다. 이 문서에서는 올바른 접근 방식을 다루고 일반적인 문제에 대한 솔루션을 제공합니다.
잘못된 접근 방식
잘못된 접근 방식에는 package_data를 정의하고 include_package_data를 True로 설정하는 것이 포함됩니다. 제공된 예에서 볼 수 있습니다:
<code class="python">setup( name='myapp', packages=find_packages(), package_data={ 'myapp': ['data/*.txt'], }, include_package_data=True, zip_safe=False, install_requires=['distribute'], )</code>
올바른 접근 방식
잘못된 접근 방식의 문제는 package_data가 바이너리 패키지를 빌드할 때만 사용된다는 것입니다(예: Python 설정) .py bdist ...) 그러나 소스 패키지를 빌드할 때는 그렇지 않습니다(예: python setup.py sdist ...).
올바른 접근 방식은 MANIFEST.in을 사용하여 바이너리 배포판과 소스 배포판 모두에 포함된 파일을 지정하는 것입니다. . 다음은 MANIFEST.in 파일의 예입니다.
include *.txt recursive-include myapp/data *
MANIFEST.in을 사용하면 구축 중인 배포 유형에 관계없이 필요한 모든 패키지 데이터가 포함되도록 할 수 있습니다.
위 내용은 setuptools/distutils에 패키지 데이터를 올바르게 포함하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!