パッケージ データを配布可能な Python パッケージに組み込むと、特に setuptools または distutils を使用する場合に課題が発生することがよくあります。従来の通念に従っているにもかかわらず、一部のユーザーは、インストーラーで目的のファイルを取得するのに困難に遭遇します。
質問に示されている構成:
<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>
が表示されます。確立された文書に基づいて正しいこと。ただし、回答が鋭く指摘しているように、バイナリ ビルド (python setup.py bdist ...) を扱う場合、このアプローチは不十分です。このシナリオでは、package_data メカニズムは使用されません。
バイナリ配布とソース配布の両方にパッケージ データを確実に含めるために、MANIFEST.in ファイルは堅牢な代替手段を提供します。 MANIFEST.in は、パッケージに組み込まれるファイルを明示的にリストするカスタマイズ可能なマニフェストです。この方法を使用すると、開発者は両方のインストール シナリオに必要なデータがすべて存在することを確認できます。
以上がsetuptools/distutils を使用してパッケージ データがバイナリ ディストリビューションとソース ディストリビューションの両方に含まれていることを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。