我在 IntelliJ 2021.2.3 中有一个 python 项目,使用诗歌作为依赖管理器。我安装了诗歌插件和python 插件。
我最近将此项目从 重命名old_project_name
为new_project_name
。我重命名了我的项目目录,pyproject.toml
文件中的项目名称,并更新了 Intellij 项目结构中的名称:
File > Project Structure > Project Settings > Project > Project Name
File > Project Structure > Project Settings > Modules > Name
现在我想在这个项目中安装对 intelliJ 的 pytest 支持。所以我按照Jetbrain 的文档中描述的步骤设置 pytest
- 去
Tools > Manage Python Packages
- 搜索
pytest
- 点击
install
但是安装失败并显示以下错误消息:
无法启动进程,工作目录“/home/user/projects/old_project_name”不存在
如何将此当前设置为/home/user/projects/old_project_name
的工作目录更改为与我的新项目名称对应的目录/home/user/projects/new_project_name
?
一个简单的解决方案是删除并重新创建我的项目,但我想知道是否有更好的选择。
TDLR:我通过使用诗歌插件重新创建项目的 virtualenv 解决了这个问题
是什么造成了我的问题?
当我重命名我的项目时,我没有更改我使用诗歌插件创建的项目虚拟环境。这个虚拟环境虽然看起来像是一个全局的虚拟环境,但实际上是与项目相关联的。您可以看到,如果您查看 IntelliJ 配置中的虚拟环境定义,在 file 中
~/.config/JetBrains/IntelliJIdea2021.2/options/jdk.table.xml
,有一个ASSOCIATED_PROJECT_PATH
元素明确包含项目的路径:因此,我无法在不再存在的项目的虚拟环境上安装新的依赖项。
我是如何解决的
重命名项目时,您应该按照以下步骤重新创建一个新的虚拟环境并将其链接到您的项目:
File > Project Structure
Platform Settings > SDKs
在左侧菜单中选择+
左上角的 并选择Add Python SDK...
Poetry Environment
在左侧菜单中选择Ok
右下角的,它会创建名为Poetry (new_project_name)
Project Settings > Project
Poetry (new_project_name)
而不是Poetry (old_project_name)
在Project SDK
下拉菜单中Apply
右下角的有了这个,你就准备好了,你可以安装新的 python 包而不会
Cannot start process, the working directory '...' does not exist
出错