错误现象
安装后,Anaconda Navigator启动报错如下:
An unexpected error occurred on Navigator start-up<br>'root_prefix'
Traceback (most recent call last):
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\exceptions.py", line 75, in exception_handler
return_value = func(*args, **kwargs)
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\app\start.py", line 150, in start_app
window = run_app(splash)
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\app\start.py", line 65, in run_app
window = MainWindow(splash=splash, tab_project=False)
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\widgets\main_window.py", line 163, in __init__
self.api = AnacondaAPI()
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\api\anaconda_api.py", line 2185, in AnacondaAPI
ANACONDA_API = _AnacondaAPI()
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\api\anaconda_api.py", line 89, in __init__
self._conda_api = CondaAPI()
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\api\conda_api.py", line 1714, in CondaAPI
CONDA_API = _CondaAPI()
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\api\conda_api.py", line 350, in __init__
self.set_conda_prefix(info=get_conda_info())
File "C:\Anaconda3\lib\site-packages\anaconda_navigator\api\conda_api.py", line 505, in set_conda_prefix
self.ROOT_PREFIX = info['root_prefix']
KeyError: 'root_prefix'
解决办法:
方法一:如果你的Anaconda不是最新版本,重装最新版本的Anaconda即可。
方法二:打开Anaconda Prompt,依次执行下列命令:
conda update conda
conda update anaconda-navigator
conda update navigator-updater
执行过程都会提示[y]/n,输入y回车继续执行;如果有win10提示是否“允许xxx更改你的设备”的弹窗,都选“是”
如果顺利执行,应该可以解决问题了。若还没有解决,建议尝试conda update conda conda-build
,不行就试下conda install conda-build --force
后话
若执行过程遇到UnicodeDecodeError
,检查环境变量,选中用户变量的Path,点编辑,然后点编辑文本
检查此处的文本,确保下面两点:
- 不含有中文
- 不含有两个连续的英文分号,即
;;
其中第一点是必须要保证的,第二点不符合的话vscode的python拓展会报错,我觉得这里也最好改一下。
更改完之后记得重启电脑
参考资料