ホームページ  >  記事  >  バックエンド開発  >  setuptools/distutils にパッケージ データを適切に含める方法

setuptools/distutils にパッケージ データを適切に含める方法

Susan Sarandon
Susan Sarandonオリジナル
2024-11-03 22:16:03345ブラウズ

How to Properly Include Package Data with setuptools/distutils?

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。