当前环境:Poetry (version 2.0.1)
python Python 3.11.8
根据:https://python-poetry.org/docs/managing-environments/#bash-csh-zsh
在新版本的 poetry 执行 poetry shell
会报错
这个功能目前需要使用 poetry-plugin-shell
插件
关于 poetry-plugin-shell
poetry-plugin-shell 是一个插件,它运行一个激活了虚拟环境的子shell。
这个插件取代了以前在 poetry 中可用的shell
命令的相同功能。
- github : https://github.com/python-poetry/poetry-plugin-shell
安装
安装shell
插件最简单的方法是通过 poetry 的self add
命令。
poetry self add poetry-plugin-shell
如果你使用pipx
安装 poetry ,你可以通过pipx inject
命令添加插件。
pipx inject poetry poetry-plugin-shell
否则,如果你使用pip
安装 poetry ,你可以通过pip install
命令添加插件包。
pip install poetry-plugin-shell
用法
该插件提供了一个shell
命令来运行激活虚拟环境的子shell。
poetry shell
默认情况下,将检测并使用当前活动的shell。否则,将使用通过环境变量SHELL
(在*nix上)或COMSPEC
(在Windows上)定义的shell。
如果虚拟环境不存在,则会创建它。
请注意,此命令启动一个新shell并激活虚拟环境。
因此,应该使用exit
来正确退出shell和虚拟环境,而不是deactivate
。
注: 该插件在内部使用Shellingham项目来检测当前活动的shell。
2025-01-20(一)