python setup.py sdist只包含来自顶级模块的.py源代码

use*_*108 28 python setup.py sdist

我有一个setup.py:

from setuptools import setup

setup(
      ...
      packages=['mypackage'],
      test_suite='mypackage.tests',
      ...
    )
Run Code Online (Sandbox Code Playgroud)

python setup.py sdist 创建一个文件,该文件仅包含顶级mypackage中的源模块,而不包括mypackage.tests和任何其他子模块.

我究竟做错了什么?

使用python 2.7

Mar*_*ers 27

使用find_packages()功能:

from setuptools import setup, find_packages

setup(
    # ...
    packages=find_packages(),
)
Run Code Online (Sandbox Code Playgroud)

该函数将搜索python包(带有__init__.py文件的目录)并将它们作为格式正确的列表返回.它将从与setup.py脚本相同的目录开始,但可以给出一个明确的起始目录,以及排除模式,如果你需要它来跳过一些东西.