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 中国語 Web サイトの他の関連記事を参照してください。