您现在的位置是:首页 > 技术教程 正文

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

admin 阅读: 2024-03-22
后台-插件-广告管理-内容页头部广告(手机)

文章目录

  • 问题描述
  • 问题分析
  • 解决方法
  • 参考资料

问题描述

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

问题分析

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

conda update -n base conda
  • 1

去升级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

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索