目录
大家都知道Windows系统对于开发者来说并不友好,尤其是新手,当然这是相比于linux和MacOS相比,因为开发工具、项目脚本等环境配置要为复杂,注意事项也更多一些。而这篇文章将主要围绕系统用户环境变量问题,很多同学添加环境变量后,不生效,如何解决?
接下来我将以我安装miniconda3并设置conda环境变量来举例
添加环境变量
1. 搜索栏搜索环境变量
2. 点击 环境变量
3. 点击 Path 然后编辑
4. 添加环境变量后确定
解决不生效
不生效场景
我在安装miniconda的时候勾选了将其添加到环境变量中,所以自动就会把相关文件路径添加到环境变量中,如果需要手动修改或者手动添加的话按照第一部分做即可。然后我再Powershell下测试可以使用,但是打开IDE terminal后就会报错,这是因为没有生效。
用户下生效:
IDE 其他盘符不生效:
报错可能:
解决办法
初始化conda,我们在添加完变量后,需要初始化一下,才能全局生效,这就比MacOS麻烦一些。
需要在conda所在目录下执行下面命令(看完再做):
conda init powershell
这样就解决了非全局生效的问题,但是IDE还会有问题,每次new terminal都会出现问题,如下:
这个错误是因为 PowerShell 的执行策略(Execution Policy)阻止了脚本文件的运行。
解决办法:
1. 以管理员身份打开 PowerShell (win + R 输入 powershell)
2. 执行
# 查看当前策略
Get-ExecutionPolicy
# 修改为允许本地脚本运行(关键步骤)
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
3. 重新初始化 Conda:
conda init powershell
就解决了:
Extra
保持执行策略为 RemoteSigned
# 永久保存设置
Set-ExecutionPolicy RemoteSigned -Scope LocalMachine
管理员身份运行powershell然后执行上面代码:
实现上述命令后,每次启动IDE Terminal,都会自动初始化conda 根环境:
执行完conda init powershell ,Conda 会在 PowerShell 启动时注入 profile 脚本,自动执行 conda activate base
如果不想每次都自动激活可以执行:
conda config --set auto_activate_base false
# 重新打开终端即可看到提示符不再包含 (base)
如果只想暂时不用conda根环境:
conda deactivate
重新激活
conda activate base