首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在pyproject.toml中指定命令行脚本

在pyproject.toml中指定命令行脚本
EN

Stack Overflow用户
提问于 2020-08-09 13:19:49
回答 1查看 8.5K关注 0票数 13

我正在尝试将一个pyproject.toml添加到一个一直使用setup.py的项目中,以启用pipx的支持。我想指定这个项目在pyproject.toml中包含的命令行脚本,但是我可以找到的所有指南都给出了用于诗歌的指导,而我没有使用这些指导。

我也不想为模块指定入口点--我已经有了工作命令行脚本,只想指定这些脚本。

pyproject.toml中是否有指定命令行脚本的适当位置?

不确定这是否重要,但所讨论的包是切块

EN

回答 1

Stack Overflow用户

发布于 2022-07-21 13:15:09

更新2022年7月:如果TOML文件使用setuptools作为其构建系统,setuptools将很高兴地创建和安装一个控制台脚本。例如,我的pyproject.toml文件的启动方式如下:

代码语言:javascript
复制
[build-system]
requires = ["setuptools>=61.0"]
build-backend = "setuptools.build_meta"

使用这样的条目扩展您的pyproject.toml文件,命名包、模块和入口点函数名:

代码语言:javascript
复制
[project.scripts]
my-client = "my_package.my_module:main_cli"

然后运行安装顺序:

代码语言:javascript
复制
pip3 install .

setuptools将在我的Py3.9虚拟环境的bin目录(~/..virtualenvs/py39/bin)中为我安装一个名为my-client的shell脚本。

我做了一件类似的事情,升级了一个有setup.py的包,而且我没有现有的脚本。通过重写使用pyproject.toml,我完全放弃了旧的setup.py文件。

我意识到OP要求一种安装现有脚本的方法,而我并没有提供这种方法。这个答案告诉setuptools创建和安装新脚本。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63326840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档