如何从setup.py文件导入或读取VERSION,以便我可以在运行时记录该版本。 这样我就可以确保获得的结果来自我的包的特定版本。
以下是我的setup.py文件的内容(简化为必要部分)
import distutils.core
VERSION = '0.1.0'
LICENSE = 'GPLv2'
distutils.core.setup(**KWARGS)
当我尝试做的时候: 导入设置 我收到以下错误:
distutils.core.setup(**KWARGS)
usr/lib/python2.6/distutils/core.pyc in setup(**attrs)
ok = dist.parse_command_line()
except DistutilsArgError, msg:
raise SystemExit, gen_usage(dist.script_name) + "\nerror: %s" % msg
if DEBUG:
SystemExit:
error: no commands supplied
答案 0 :(得分:0)
在您的示例中,设置会自动执行,您必须替换:
distutils.core.setup(**KWARGS)
使用:
if __name__ == '__main__':
distutils.core.setup(**KWARGS)
像这样,只有在您实际运行setup.py
时才会执行设置答案 1 :(得分:0)
有一种方法可以从您的设置脚本中获取该版本:
python setup.py --version
但我不确定我理解“在运行时记录版本”是什么意思;安装脚本通常不随您的模块一起安装,因此人们使用其他方式在其代码中添加版本号,例如模块中的__version__
属性或__init__.py
文件。