AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / computer / 问题 / 1700215
Accepted
Vincent Doba
Vincent Doba
Asked: 2022-01-20 08:51:08 +0800 CST2022-01-20 08:51:08 +0800 CST 2022-01-20 08:51:08 +0800 CST

如何更改用于在 IntelliJ 中安装 python 包的工作区

  • 772

我在 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?

一个简单的解决方案是删除并重新创建我的项目,但我想知道是否有更好的选择。

python intellij-idea
  • 2 2 个回答
  • 306 Views

2 个回答

  • Voted
  1. Pawel W
    2022-01-20T10:05:18+08:002022-01-20T10:05:18+08:00
    • 关闭智能
    • 更改您的项目名称
    • 转到项目名称文件夹并在某个文件管理器中搜索所有出现的 old_project_name 并重命名为新名称。然后去intellij,它应该可以工作。
    • 0
  2. Best Answer
    Vincent Doba
    2022-01-21T01:50:18+08:002022-01-21T01:50:18+08:00

    TDLR:我通过使用诗歌插件重新创建项目的 virtualenv 解决了这个问题

    是什么造成了我的问题?

    当我重命名我的项目时,我没有更改我使用诗歌插件创建的项目虚拟环境。这个虚拟环境虽然看起来像是一个全局的虚拟环境,但实际上是与项目相关联的。您可以看到,如果您查看 IntelliJ 配置中的虚拟环境定义,在 file 中~/.config/JetBrains/IntelliJIdea2021.2/options/jdk.table.xml,有一个ASSOCIATED_PROJECT_PATH元素明确包含项目的路径:

     <application>
      <component name="ProjectJdkTable">
        <jdk version="2">
          <name value="Poetry (old_project_name)" />
          <type value="Python SDK" />
          <version value="Python 3.10.0" />
          <homePath value="$USER_HOME$/.cache/pypoetry/virtualenvs/old_project_name-HdcC6q8N-py3.10/bin/python" />
          <roots>
            <annotationsPath>
              <root type="composite" />
            </annotationsPath>
            <classPath>
              <root type="composite">
                <root url="file:///usr/local/lib/python3.10" type="simple" />
                <root url="file:///usr/local/lib/python3.10/lib-dynload" type="simple" />
                <root url="file://$USER_HOME$/.cache/pypoetry/virtualenvs/old_project_name-HdcC6q8N-py3.10/lib/python3.10/site-packages" type="simple" />
                <root url="file://$USER_HOME$/.cache/JetBrains/IntelliJIdea2021.2/python_stubs/95207232" type="simple" />
                <root url="file://$APPLICATION_PLUGINS_DIR$/python/helpers/python-skeletons" type="simple" />
                ...
                <root url="file://$APPLICATION_PLUGINS_DIR$/python/helpers/typeshed/stubs/python-dateutil" type="simple" />
              </root>
            </classPath>
            <javadocPath>
              <root type="composite" />
            </javadocPath>
            <sourcePath>
              <root type="composite" />
            </sourcePath>
          </roots>
          <additional ASSOCIATED_PROJECT_PATH="$USER_HOME$/projects/old_project_name" IS_POETRY="true" />
        </jdk>
      </component>
    </application>
    

    因此,我无法在不再存在的项目的虚拟环境上安装新的依赖项。

    我是如何解决的

    重命名项目时,您应该按照以下步骤重新创建一个新的虚拟环境并将其链接到您的项目:

    • 去File > Project Structure
    • Platform Settings > SDKs在左侧菜单中选择
    • 单击+左上角的 并选择Add Python SDK...
    • Poetry Environment在左侧菜单中选择
    • 单击Ok右下角的,它会创建名为Poetry (new_project_name)
    • 选择Project Settings > Project
    • 选择 SDKPoetry (new_project_name)而不是Poetry (old_project_name)在Project SDK下拉菜单中
    • 点击Apply右下角的

    有了这个,你就准备好了,你可以安装新的 python 包而不会Cannot start process, the working directory '...' does not exist出错

    • 0

相关问题

  • Conda 在激活环境时中断 -- CommandNotFoundError: No command 'conda conda'

  • Notepad++ 和 Python 文档字符串

  • SCons 使用开发 gcc8 构建

  • Matplotlib - 底图安装错误

  • pip 不会正确更新或安装模块

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何减少“vmmem”进程的消耗?

    • 11 个回答
  • Marko Smith

    从 Microsoft Stream 下载视频

    • 4 个回答
  • Marko Smith

    Google Chrome DevTools 无法解析 SourceMap:chrome-extension

    • 6 个回答
  • Marko Smith

    Windows 照片查看器因为内存不足而无法运行?

    • 5 个回答
  • Marko Smith

    支持结束后如何激活 WindowsXP?

    • 6 个回答
  • Marko Smith

    远程桌面间歇性冻结

    • 7 个回答
  • Marko Smith

    子网掩码 /32 是什么意思?

    • 6 个回答
  • Marko Smith

    鼠标指针在 Windows 中按下的箭头键上移动?

    • 1 个回答
  • Marko Smith

    VirtualBox 无法以 VERR_NEM_VM_CREATE_FAILED 启动

    • 8 个回答
  • Marko Smith

    应用程序不会出现在 MacBook 的摄像头和麦克风隐私设置中

    • 5 个回答
  • Martin Hope
    Saaru Lindestøkke 为什么使用 Python 的 tar 库时 tar.xz 文件比 macOS tar 小 15 倍? 2021-03-14 09:37:48 +0800 CST
  • Martin Hope
    CiaranWelsh 如何减少“vmmem”进程的消耗? 2020-06-10 02:06:58 +0800 CST
  • Martin Hope
    Jim Windows 10 搜索未加载,显示空白窗口 2020-02-06 03:28:26 +0800 CST
  • Martin Hope
    v15 为什么通过电缆(同轴电缆)的千兆位/秒 Internet 连接不能像光纤一样提供对称速度? 2020-01-25 08:53:31 +0800 CST
  • Martin Hope
    andre_ss6 远程桌面间歇性冻结 2019-09-11 12:56:40 +0800 CST
  • Martin Hope
    Riley Carney 为什么在 URL 后面加一个点会删除登录信息? 2019-08-06 10:59:24 +0800 CST
  • Martin Hope
    zdimension 鼠标指针在 Windows 中按下的箭头键上移动? 2019-08-04 06:39:57 +0800 CST
  • Martin Hope
    jonsca 我所有的 Firefox 附加组件突然被禁用了,我该如何重新启用它们? 2019-05-04 17:58:52 +0800 CST
  • Martin Hope
    MCK 是否可以使用文本创建二维码? 2019-04-02 06:32:14 +0800 CST
  • Martin Hope
    SoniEx2 更改 git init 默认分支名称 2019-04-01 06:16:56 +0800 CST

热门标签

windows-10 linux windows microsoft-excel networking ubuntu worksheet-function bash command-line hard-drive

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve