如何使用 setuptools/distutils 正确包含包数据?

Susan Sarandon
发布: 2024-11-03 22:16:03
原创
332 人浏览过

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 setup.py bdist ...)时使用,但在构建源包(例如 python setup.py bdist )时不使用。 py sdist ...)。

正确的方法是使用 MANIFEST.in 指定二进制和源发行版中包含的文件。以下是 MANIFEST.in 文件的示例:

include *.txt
recursive-include myapp/data *
登录后复制

通过使用 MANIFEST.in,您可以确保包含所有必需的包数据​​,无论构建的分发类型如何。

以上是如何使用 setuptools/distutils 正确包含包数据?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板