首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python setup.py:缺少某些文件

Python setup.py:缺少某些文件
EN

Stack Overflow用户
提问于 2018-06-16 00:38:35
回答 1查看 2.4K关注 0票数 2

我的项目结构如下所示:

代码语言:javascript
复制
package1/  # a lot of files, submodules here.
package2/  # a lot of files, submodules here.
package3/  # a lot of files, submodules here.
tests/
setup.py

我有一个类似于下面的setup.py测试:

代码语言:javascript
复制
setup(
    name='MyPackage',
    packages=find_packages(exclude=['tests']),
    package_data={
        'package': ['./path/*.xsd'],
    },
    include_package_data=True,
    py_modules=['package1'],
    version=__version__,
    description='My description',
    classifiers=[
        'Programming Language :: Python :: 2.7',
        'Programming Language :: Python :: 3',
    ],
    zip_safe=False,
    author='Me',
    author_email='example@example.com',
    url='http://www.example.com/',
    keywords=['Keyword1', 'Keyword2'],
    scripts=['./script1.py', './script2.py'],
    install_requires=[
        'isodate',
        'pycurl',

    ],
    extras_require={':python_version < "3.0"': ['enum34', 'future']}
)

我将通过以下方式使用它:

代码语言:javascript
复制
python setup.py bdist_wheel -d .

在此之后,我将通过以下方式安装它:

代码语言:javascript
复制
pip install MyPackage-1.1.0.whl

它工作得很好但是..。

在安装到虚拟环境中之后,我发现package2中缺少一个配置文件。它看起来类似于:

代码语言:javascript
复制
package2/
    http/
        api/
            http.py
            api.yaml
            ...

有趣的是,这个包中的http.py和其他文件仍然存在,但是api.yaml在这个包中的某个地方消失了。

所以,问题是:这怎么可能,有人有什么想法吗?

更新:

我发现所有非Python文件都丢失了...

EN

回答 1

Stack Overflow用户

发布于 2018-06-16 05:06:20

代码语言:javascript
复制
package_data={
    'package': ['./path/*.xsd'],
},

字典的关键字必须是您的真实包名称。值必须是要包含的模式列表。要包含package2/http/api/api.yaml,请执行以下操作:

代码语言:javascript
复制
package_data={
    'package2': ['http/api/*.yaml'],
},

列出所有非python文件和模式。

另一种方法是创建MANIFEST.in (通常用于源代码分发)和add

代码语言:javascript
复制
include_package_data=True,

setup()中。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50879668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档