微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我如何使setup.py在包装中包含一个类

如何解决我如何使setup.py在包装中包含一个类

我正在使用setup.py打包我的项目。结构如下:

foo -
    |
    |--foo/
    |    |
    |    |--first.py
    |    |--second.py
    |    |--...
    |--README
    |--requirements.txt
    |--scripts/
    |        |
    |        |-script1.sh
    |        |-script2.py
    |--service.py
    |--setup.py

如果我运行当前的setup.py,这符合此处的建议:What is setup.py? 然后在venv/lib/python3.6/site-packages/foovenv/lib/python3.6/site-packages/scripts中可以看到所有的python类。但是缺少service.py。我的问题是如何修改setup.py以将service.py包含到包装中,以便可以在venv/lib/python3.6/site-packages/上找到service.py? 预先感谢!

解决方法

对于要包含在发行版中的顶级模块,例如service.py setuptools 提供了py_modules参数。

setuptools 文档没有清楚显示,但与 distutils (现已弃用)中的相同:

setuptools.setup(
    # ...
    py_modules=['service'],# no '.py'
)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。