Visual Studio Code 中的 PATH 变量与 Mac 上的终端不同

问题描述

Visual Studio Code 中集成终端中的 PATH 变量与终端应用程序中的变量不同。我该如何更改?

我正在使用来自 Intel oneAPI 的 Intel distribution for Python,并且在我的 setvars.sh 中同时调用.zshrc 脚本和 conda 初始化代码。在 Mac 终端中,我可以正确激活 conda 环境。但是,在VSC中的集成终端中,/usr/bin文件夹列在conda文件夹之前,因此调用了系统Python解释。

编辑:我最初认为英特尔 Python 发行版与此有关,但常规 Anaconda 发行版也会出现同样的问题。

解决方法

看起来问题在于 Visual Studio Code 从终端继承了 PATH 但不知何故它重新排列了文件夹的顺序,这混淆了 Anaconda 激活脚本。由于找不到解决方案,我通过在 Anaconda 初始化脚本之后将以下几行添加到我的 .zshrc 中来实施解决方法:

# Workaround for Visual Studio Code integrated terminal
if [[ -v VSCODE_GIT_IPC_HANDLE ]]; then
    conda deactivate
    conda activate
fi
,

我不是 100% 确定正确的行为,因为我不使用 Mac,但您可以尝试从具有正确环境的终端启动 VS Code。 使用 https://code.visualstudio.com/docs/setup/mac#_launching-from-the-command-line

确保 code 在您的 PATH 中

然后确保在您的机器上关闭所有 VScode 会话并通过 code 从终端启动它。