在学习setup.py
的结构时,我遇到了两个术语:entry_points
和cmdclass
。
我阅读了setuptools
和distutils
的文档。有了这些,再加上我在网上找到的一些信息,我得出的结论是,这两个是相同的。具体来说:
这两个用于添加自定义命令,或者可以用于向现有命令添加钩子。
但是,当我检查一些流行软件包的setup.py
文件时,我发现这两个属性正在一起使用。例如参见numpy
软件包中的setup.py
。
能否请您解释一下这两个属性的用法?谢谢你。
答案 0 :(得分:2)
cmdclass
是一种修改setup.py
的行为的方法。例如,您可以覆盖build
或install
命令来扩展它们。
entry_points
与scripts
类似,它们声明将在安装时创建的脚本。这些脚本旨在由用户运行。