include_package_data=True 无效

include_package_data=True does not work

我使用 include_package_data=Truesetuptools

尽管我有 include_package_data=True 当我 运行 python setup.py install 我的 *.xml*.ttl (以及其他)文件没有安装。

我的错误是什么?还是setuptools的bug?怎么办?

来自 https://github.com/vporton/xml-boiler setup.py:

from coverage.annotate import os
from setuptools import setup, find_packages
from setuptools.command.build_py import build_py as DistutilsBuild


class MyBuild(DistutilsBuild):
    def run(self):
        DistutilsBuild.run(self)
        os.system('make')


setup(
    name='xml-boiler',
    version='0.0.2',
    url='https://github.com/vporton/xml-boiler',
    license='AGPLv3',
    author='Victor Porton',
    author_email='porton@narod.ru',
    description='Automatically transform between XML namespaces',

    use_scm_version=True,
    setup_requires=['setuptools_scm'],
    packages=find_packages(),
    # package_data={'': ['**/*.xml', '**/*.ttl', '**/*.net', 'data/assets/*', 'data/scripts/*.xslt',
    #                    'xmlboiler/doc/*.html', 'xmlboiler/doc/*.css']},
    include_package_data=True,
    scripts=['bin/boiler'],
    # Does not work for non-root install:
    # data_files = [
    #     ('/etc/xmlboiler', ['etc/config-cli.ttl'])
    # ],
    test_suite="xmlboiler.tests",

    cmdclass={'build_py': MyBuild},
)

这是我的 MANIFEST.in:

recursive-include xmlboiler *.xml *.ttl *.xslt
recursive-include xmlboiler/core/data/assets *

需要 zip_safe=False 标志以防止安装在 ZIP 文件中。

我在使用这个 MANIFEST.in 时遇到了同样的问题:

include setup.json
recursive-include . *.coffee
  • .coffee 文件存在于 .tar.gz 文件中但未安装
  • 问题 没有 通过添加 zip_safe=False
  • 解决
  • 通过从 recursive-include 切换到个人 includes
  • 解决的

这正在使用

  • 车轮 0.32.3
  • 麻线 1.12.1
  • 设置工具 39.2.0