求pyproject.toml中对应setup.py data-files属性的等价写法
pyproject.toml 中对应 setup.py data-files 的等价写法
你的配置格式没问题,但可能是写法细节或 setuptools 版本导致报错,这里给出两种等价于 setup.py data_files=[('etc', ['etc/foo.json', 'etc/foo2.json'])] 的正确写法:
写法一:字典格式
[tool.setuptools] data-files = [ { "etc": ["etc/foo.json", "etc/foo2.json"] } ]
写法二:列表格式(更贴近 setup.py 原生结构)
[tool.setuptools] data-files = [ ["etc", ["etc/foo.json", "etc/foo2.json"]] ]
注意事项
- 确保你的 setuptools 版本 ≥ 61.0.0,旧版本不支持
[tool.setuptools]下的data-files配置,执行pip install --upgrade setuptools即可升级。 - 源文件路径是相对于仓库根目录的,你根目录下的
etc目录结构没问题,路径写法正确。 - 如果仍报错,检查 TOML 语法是否有多余逗号或缩进错误,TOML 对格式要求严格。
内容的提问来源于stack exchange,提问作者Mad Max
相关产品推荐
相关产品推荐

