项目场景:
很久没用conda了,现在想要新建一个虚拟环境,执行命令行:conda create -n testEnv python=3.10
报错: HTTP 404 NOT FOUND
CondaError: CondaHTTPError: HTTP 404 NOT FOUND for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/ca-certificates-2024.9.24-haa95532_0.tar.bz2>
Elapsed: 00:00.521650
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
CondaError: CondaHTTPError: HTTP 404 NOT FOUND for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/ca-certificates-2024.9.24-haa95532_0.tar.bz2>
Elapsed: 00:00.635947
An HTTP error occurred when trying to retrieve this URL.
HTTP errors are often intermittent, and a simple retry will get you on your way.
CondaError: CondaHTTPError: HTTP 404 NOT FOUND for url <https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/win-64/ca-certificates-2024.9.24-haa95532_0.tar.bz2>
Elapsed: 00:00.251959
An HTTP error occurred when trying to retrieve this URL.
检索了一下这个报错代码,url直接访问清华源确实访问不到,于是网上检索解决方案。
方案一:
(1)打开.condarc,重新替换清华源
路径:C:\Users\你的用户名.condarc
去掉channels中的 - defaults
,新增清华源路径。更改结果如下:
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
default_channels:
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch-lts: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
show_channel_urls: true
offline: false
ssl_verify: false
(2)执行conda clean --all
,清除缓存。全部执行Y
该操作不会直接影响已经创建的虚拟环境。该命令主要用于清理conda缓存目录中的下载的包文件、索引文件和不必要的缓存文件,以释放磁盘空间。
(3)再次创建虚拟环境 。conda create -n testEnv python=3.10
参考推文:https://blog.youkuaiyun.com/m0_61895771/article/details/143626629
有同学这一步就可以成功创建环境了,可惜我还不行。
方案二:
新报错如下: ERROR conda.core.link:_execute(502)
Executing transaction: failed
ERROR conda.core.link:_execute(502): An error occurred while installing package 'conda-forge::setuptools-65.5.1-pyhd8ed1ab_0'.
FileNotFoundError(2, '系统找不到指定的文件。', None, 2, None)
Attempting to roll back.
Rolling back transaction: done
FileNotFoundError(2, '系统找不到指定的文件。', None, 2, None)
参考方案如下:
(1)新建yml文件。
在D:\Anaconda3\envs
路径下配置一个名为environment.yml的文件
内容为:
name: testEnv // 你的虚拟环境名
channels:
- conda-forge
- defaults
dependencies:
- python=3.10 //你的版本号
- setuptools=65.5.0 //降一下版本号
(2)手动删除之前没创建成功的文件。
在envs环境下会有一个空的,以虚拟环境名命名的文件夹。这是之前创建失败后的遗留物,需要手动删除。
若你执行conda remove -n testEnv --all
会提示没有这个环境,说明之前环境就没有创建成功。
若你不删除文件夹直接执行创建环境命令,会提示该环境已经存在(一个死循环hhhh)
(3)在D:\Anaconda3\envs
下进入控制台cmd,输入:conda env create -f environment.yml
有的同学这一步也可以成功创建环境了,可是我还不行QAQ
参考推文:https://blog.youkuaiyun.com/m0_59557249/article/details/130204703
方案三:
报错:CondaValueError: Malformed version string '~': invalid character(s).
这个问题我找的方法都是检查语法错误,但我实在找不到我的语法哪里有问题。
有一种情况可能是安装的版本号不对。需要检查版本号是否正确
(1)试验版本号: 从已有环境中找版本号:python3.10+setuptools72.1
但是报错QAQ………
python3.10.14 也报错
(2)版本号成功版!!!!! python3.10+setuptools==63.4.1
最后执行的命令是:
conda create -n testEnv python=3.10 setuptools==63.4.1
成功激活虚拟环境!!!
总结:
(1)HTTP 404 NOT FOUND
报错,清理一下缓存,替换一下镜像源配置文件.condarc
(2)ERROR conda.core.link:_execute(502)
报错,应该是镜像源找不到对应版本的包,可以尝试替换版本或用yml方式安装。
(3)python版本号和setuptools版本号要对应
(4)CondaValueError: Malformed version string '~': invalid character(s)
要检查是不是文本空格,中英文错误……
血泪史记录~QAQ希望大家都能快速成功地配好环境