繁体   English   中英

为什么 find_packages(exclude=xxx) 在执行 setup.py sdist 时不起作用?

[英]Why find_packages(exclude=xxx) does not work when doing setup.py sdist?

我正在打包我的源代码,但我不想包含测试和文档,因为它们太大了。

为此,我将其包含在我的 setup.py 中:

setup(...
      packages=find_packages(exclude=['tests.*','tests','docs.*','docs']),
      ...
)

当做一个

python setup.py sdist

我可以看到我的根目录 tests/ 和 docs/ 目录以及里面的所有内容仍然包含在生成的发行版中。

好像只有

python setup.py bdist

对 exclude 参数敏感。

为什么? 是否可以排除“setup.py sdist”的目录?

我通过删除* .egg-info /目录解决了这个问题:似乎这个目录记住了一些较旧的设置......

我遇到了同样的问题,但我很愚蠢并且滥用了exclude参数。

如果你有

packages=setuptools.find_packages(exclude="tests")

您将排除目录"t", "e", "s", "t", "s"

你应该拥有的是:

packages=setuptools.find_packages(exclude=["tests"])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM