解决创建conda环境时Solving environment: failed 和 ResolvePackageNotFound 的错误

问题描述

今天在调试论文的代码时,需要创建anaconda环境,按照github上给的指定进行环境的创建。却一直报Solving environment: failed 和 ResolvePackageNotFound的错误。如下图所示:
在这里插入图片描述

问题分析

期初以为时镜像源的问题,又重新添加了进行源,还是没有解决。网上的好多资料都是通过添加镜像源去解决,然而并不能解决我的这个问题。还有说通过

conda update -n base conda

去升级conda base,也进行了尝试。然而升级超级慢不说,也没有解决我的问题。
最后通过对问题的进一步定位,又查了好久的资料,终于在一篇博客中找到了解决方法。

原来这是因为用那条命令(conda env create -f environment.yml )进行创建环境时,所用的配置文件里是带有配置信息的。环境配置文件是在别的机器上导出的,文件里的软件包是按照导出文件的机器配置的,因此导出的时候,把这些包的详细信息也导了出来,即第二个等号后面跟着的信息,当我们按照这个文件创建环境时,conda就会根据我们机器的配置信息,按照配置文件里包的详细信息,去找这个包,那当然找不到,结果发现“查无此包”,因此也就会报上面的错误。

解决方法

上面找到了问题的所在之处,解决起来就很简单了,只需要在配置文件 environment.yml 中将包的详细信息删除,也就是第二个等号后面的内容。
原先的 environment.yml 是下图这样
在这里插入图片描述
将dependencies中的包,第二个等号后面的内容全部删除,如下图所示:
在这里插入图片描述
修改完之后,进行保存。再次创建环境。
注意:此时可能还是会有部分包报 ResolvePackageNotFound 的错误,这个可以先将这些在配置文件 environment.yml 里删除,再创建环境,此时肯定是可以创建成功的。等运行代码时,哪里用到了这些包,再用 pip 进行单独安装。
在这里插入图片描述

参考资料

https://blog.csdn.net/weixin_42240667/article/details/115773535

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
xiaoxingxing的头像xiaoxingxing管理团队
上一篇 2023年3月5日 下午6:19
下一篇 2023年3月5日

相关推荐