如何在Python Monorepo中通过uv实现脚本跨目录全局访问?
解决Python Monorepo中uv脚本全局工作区调用问题
要让projects目录下子项目的uv run脚本在整个工作区可用,只需通过uv的工作区配置实现,步骤如下:
配置顶层工作区
在仓库根目录的pyproject.toml中添加工作区配置,指定所有子项目路径:[workspace] members = [ "projects/*", ]如果只需要特定子项目的脚本可用,可把
projects/*替换为具体项目路径,比如projects/aaa-project。同步工作区依赖
在仓库根目录执行以下命令,让uv以可编辑模式安装所有子项目包,并注册它们的脚本:uv sync该命令会将子项目的包和脚本纳入工作区的虚拟环境,确保全局可调用。
验证脚本可用性
现在在工作区的任意目录下,直接执行uv run aaa即可调用目标脚本。
注意:确保子项目pyproject.toml中的[project] name配置正确,且脚本对应的模块路径(如aaa.something:main)与包结构匹配。
内容的提问来源于stack exchange,提问作者jbcoe
相关产品推荐
相关产品推荐

