自学内容网 自学内容网

解决CondaError: Run ‘conda init‘ before ‘conda activate‘

一、问题描述

创建环境:

conda create --name test_env

环境创建完成后,系统显示:

尝试激活:

conda activate test_env

输出

CondaError: Run 'conda init' before 'conda activate'

运行“conda init”:

no change C:\Users\Username\miniconda3\Scripts\conda.exe no change C:\Users\Username\miniconda3\Scripts\conda-env.exe no change C:\Users\Username\miniconda3\Scripts\conda-script.py no change C:\Users\Username\miniconda3\Scripts\conda-env-script.py no change C:\Users\Username\miniconda3\condabin\conda.bat no change C:\Users\Username\miniconda3\Library\bin\conda.bat no change C:\Users\Username\miniconda3\condabin\_conda_activate.bat no change C:\Users\Username\miniconda3\condabin\rename_tmp.bat no change C:\Users\Username\miniconda3\condabin\conda_auto_activate.bat no change C:\Users\Username\miniconda3\condabin\conda_hook.bat no change C:\Users\Username\miniconda3\Scripts\activate.bat no change C:\Users\Username\miniconda3\condabin\activate.bat no change C:\Users\Username\miniconda3\condabin\deactivate.bat modified C:\Users\Username\miniconda3\Scripts\activate modified C:\Users\Username\miniconda3\Scripts\deactivate modified C:\Users\Username\miniconda3\etc\profile.d\conda.sh modified C:\Users\Username\miniconda3\etc\fish\conf.d\conda.fish no change C:\Users\Username\miniconda3\shell\condabin\Conda.psm1 modified C:\Users\Username\miniconda3\shell\condabin\conda-hook.ps1 no change C:\Users\Username\miniconda3\Lib\site-packages\xontrib\conda.xsh modified C:\Users\Username\miniconda3\etc\profile.d\conda.csh no change C:\Users\Username\Documents\WindowsPowerShell\profile.ps1 modified HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun ==> For changes to take effect, close and re-open your current shell. <==

退出 shell,重新打开并运行:

conda activate test_env

并再次得到

CondaError: Run 'conda init' before 'conda activate'

二、初步解决方法

使用 conda init powershell 或者 conda init cmd.exe
exit
再次打开命令窗口进行尝试

三、我的问题

我的power shell打开时会先报错:

Windows PowerShell 版权所有(C) Microsoft Corporation。保留所有权利。 安装最新的 PowerShell,了解新功能和改进!Migrating from Windows PowerShell 5.1 to PowerShell 7 - PowerShell | Microsoft Learn . : 无法加载文件 C:\Users\***\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参 阅 https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。 所在位置 行:1 字符: 3 + . 'C:\Users\***\Documents\WindowsPowerShell\profile.ps1' + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : SecurityError: (:) [],PSSecurityException + FullyQualifiedErrorId : UnauthorizedAccess PS
D:\workspace\Github_Projects>

错误原因: 

PowerShell 试图加载用户配置文件 C:\Users\***\Documents\WindowsPowerShell\profile.ps1 
但由于执行策略的限制,这个文件无法被执行 
这个配置文件是由 conda init 创建的,用于设置 conda 的环境 

对 conda 的影响: 

会影响 conda 的正常使用 
conda 的命令可能无法被正确识别 
环境切换可能会失败 

四、解决方法 

# 设置用户级别的执行策略
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

退出后再次尝试conda activate成功!

参考:Unable to activate environment - prompted to Run 'conda init' before 'conda activate' but it doesn't work - #3 by nathanmariels - Product Help - Anaconda Community 


原文地址:https://blog.csdn.net/naozibuok/article/details/143854627

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!