无法将Poetry从1.2.2降级至1.2.1,求排查解决方法
解决Poetry降级后版本不生效的问题
问题根源
- PATH路径优先级冲突:你通过curl安装的1.2.1版本和原1.2.2版本不在同一目录,系统优先调用了旧版本的可执行文件。
- 命令语法错误:
poetry self update@1.2.1是错误写法,正确格式是poetry self update 1.2.1(无@符号);另外如果你的Poetry是通过pip安装的,self update命令本身就不存在,必须用官方curl方式重新安装指定版本。
具体解决步骤
1. 定位当前Poetry的实际路径
先搞清楚系统现在调用的是哪个目录下的Poetry:
# Linux/macOS用户执行 which poetry # Windows PowerShell用户执行 where poetry
同时检查官方curl安装的默认路径版本:
# Linux/macOS ~/.local/bin/poetry --version # Windows %APPDATA%\Python\Scripts\poetry --version
如果这个路径下显示1.2.1,说明就是PATH优先级的问题。
2. 调整PATH路径优先级(Linux/macOS)
把官方安装目录放到PATH最前面,临时生效:
export PATH="$HOME/.local/bin:$PATH"
执行后验证版本:
poetry --version
要永久生效的话,把上面的export命令添加到你的shell配置文件(比如~/.bashrc或~/.zshrc),然后执行:
source ~/.bashrc # 对应自己的配置文件
3. 处理pip安装的冲突(如果之前用pip装过Poetry)
先卸载pip版本的Poetry:
pip uninstall poetry -y
然后重新用curl安装1.2.1版本:
curl -sSL https://install.python-poetry.org | POETRY_VERSION=1.2.1 python3 -
重启终端后再验证版本。
4. 正确使用降级命令(仅官方curl安装的Poetry)
如果你的Poetry是官方curl方式安装的,直接执行正确的降级命令即可:
poetry self update 1.2.1
内容的提问来源于stack exchange,提问作者Ian
相关产品推荐
相关产品推荐

