将顶级模块放在“ lib”目录中

时间:2019-02-26 05:09:10

标签: python setuptools python-packaging

上下文

我有一个这样的项目

setup.py
MANIFEST.in
lib/
    foo.py
    bar.py
magic/
    __init__.py
    alchemy.py
    submagic/
        __init__.py
        wizard.py

与此setup.py文件一起

from setuptools import setup, find_packages

setup(
    ...
    py_modules=['foo', 'bar'],
    packages=find_packages(exclude=['lib', 'lib.*']),
    package_dir={'foo': 'lib', 'bar': 'lib'}
)

MANIFEST.in

graft magic
graft lib

问题

使用pip install时,我得到的是模块lib.foolib.bar,而不是顶级模块foobar

我应该如何更改我的设置以使其按我想要的方式工作?如果可能的话,我宁愿不要将foo.py中的bar.pylib移到项目的顶层。

0 个答案:

没有答案