You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中conda activate命令执行失败的排查与解决

VSCode终端Conda激活失败问题

在VSCode终端执行conda activate <虚拟环境名>时偶尔会抛出如下错误,但系统原生终端执行完全正常:

>>>>>>>>>>>>>>>>>>>>>> ERROR REPORT <<<<<<<<<<<<<<<<<<
Traceback (most recent call last):
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/exception_handler.py", line 17, in __call__
    return func(*args, **kwargs)
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/cli/main.py", line 105, in main_sourced
    print(activator.execute(), end="")
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/activate.py", line 199, in execute
    return getattr(self, self.command)()
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/activate.py", line 165, in activate
    builder_result = self.build_activate(self.env_name_or_prefix)
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/activate.py", line 343, in build_activate
    return self._build_activate_stack(env_name_or_prefix, False)
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/activate.py", line 433, in _build_activate_stack
    deactivate_scripts = self._get_deactivate_scripts(old_conda_prefix)
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/site-packages/conda/activate.py", line 765, in _get_deactivate_scripts
    for entry in os.scandir(join(prefix, "etc", "conda", "deactivate.d"))
  File "/Users/umbertofontanazza/opt/anaconda3/lib/python3.9/posixpath.py", line 76, in join
    a = os.fspath(a)
TypeError: expected str, bytes or os.PathLike object, not NoneType

$ /Users/umbertofontanazza/opt/anaconda3/bin/conda shell.posix activate base

environment variables:
CIO_TEST=
CONDA_EXE=/Users/umbertofontanazza/opt/anaconda3/bin/conda
CONDA_PREFIX_3=/Users/umbertofontanazza/opt/anaconda3
CONDA_PYTHON_EXE=/Users/umbertofontanazza/opt/anaconda3/bin/python
CONDA_ROOT=/Users/umbertofontanazza/opt/anaconda3
CONDA_SHLVL=4
CURL_CA_BUNDLE=
LD_PRELOAD=
MANPATH=/usr/share/man:/usr/local/share/man:/Applications/Wireshark.app/Conten
ts/Resources/share/man:
PATH=/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/
sbin:/Applications/Wireshark.app/Contents/MacOS:/var/run/com.apple.sec
urity.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple
.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.s
ecurity.cryptexd/codex.system/bootstrap/usr/appleinternal/bin
REQUESTS_CA_BUNDLE=
SSL_CERT_FILE=

active environment : None
        shell level : 4
   user config file : /Users/umbertofontanazza/.condarc

populated config files : /Users/umbertofontanazza/.condarc
conda version : 23.9.0
conda-build version : 3.27.0
python version : 3.9.18.final.0
virtual packages : __archspec=1=x86_64
__osx=10.16=0
__unix=0=0
base environment : /Users/umbertofontanazza/opt/anaconda3 (writable)
conda av data dir : /Users/umbertofontanazza/opt/anaconda3/etc/conda
conda av metadata url : None
channel URLs : https://repo.anaconda.com/pkgs/main/osx-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/r/osx-64
https://repo.anaconda.com/pkgs/r/noarch
package cache : /Users/umbertofontanazza/opt/anaconda3/pkgs
/Users/umbertofontanazza/.conda/pkgs
envs directories : /Users/umbertofontanazza/opt/anaconda3/envs
/Users/umbertofontanazza/.conda/envs
platform : osx-64
user-agent : conda/23.9.0 requests/2.31.0 CPython/3.9.18 Darwin/22.5.0 OSX/10.16
UID:GID : 501:20
netrc file : None
offline mode : False

An unexpected error has occurred. Conda has prepared the above report.
If you suspect this error is being caused by a malfunctioning plugin,
consider using the --no-plugins option to turn off plugins.

Example: conda --no-plugins install

Alternatively, you can set the CONDA_NO_PLUGINS environment variable on
the command line to run the command without plugins enabled.

Example: CONDA_NO_PLUGINS=true conda install

观察到VSCode会记住每个目录的激活环境,有时Shell提示符显示同时激活了两个环境,推测VSCode打开终端时执行了额外命令,以下是查看命令及解决问题的方法:

---

## 一、查看VSCode终端启动命令

- 打开VSCode设置,搜索`terminal.integrated.shellArgs`(对应使用的Shell类型,比如bash/zsh),查看是否配置了自定义启动命令。
- 查看Python插件自动注入的命令:
  1. 打开命令面板(`Cmd+Shift+P`/`Ctrl+Shift+P`),输入`Developer: Set Log Level...`,选择`Trace`。
  2. 重新打开终端,打开输出面板(`View > Output`),选择`Terminal`选项卡,即可看到终端启动时执行的所有命令。

---

## 二、修复Conda激活错误

### 1. 关闭VSCode自动环境激活
VSCode的Python插件默认自动激活关联环境,易引发变量冲突:
- 打开VSCode设置,搜索`python.terminal.activateEnvironment`,将其设置为`false`。
- 重启VSCode终端,手动执行`conda activate <虚拟环境名>`测试。

### 2. 重置Conda Shell层级
错误日志显示`CONDA_SHLVL=4`,说明层级异常,执行以下命令重置:
```bash
conda deactivate && conda deactivate && conda deactivate && conda deactivate

之后再尝试激活目标环境。

3. 清理或更新Conda

  • 备份~/.condarc文件后删除,重置Conda配置,再测试激活命令。
  • 更新Conda到最新版本:
conda update -n base conda

4. 禁用Conda插件测试

按错误提示临时禁用插件,验证是否为插件问题:

CONDA_NO_PLUGINS=true conda activate <虚拟环境名>

若能正常激活,可逐步排查并卸载有问题的插件。


内容的提问来源于stack exchange,提问作者Umberto Fontanazza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 22:30:40