anaconda中的“Resolve Package Not Found”错误

时间:2018-05-27 16:58:34

标签: python anaconda packages conda spacy

我在Windows中安装了anaconda,然后我想添加此代码

conda env create -f robotreviewer_env_local.yml

但是我收到了这个错误

  

ResolvePackageNotFound
     - spacy = 0.101.0
     - ptyprocess = 0.5.1

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

一般策略

搜索频道

尝试在Anaconda Cloud中搜索无法解析的特定软件包。有时,它们可能来自默认值 anaconda )以外的其他渠道。在搜索中包括平台(例如platform:win-64),以更快地缩小搜索范围。如果找到具有此功能的频道,则可以将其添加到YAML定义的频道部分。 1

检查PyPI

如果找不到所需版本的Conda频道,请前往PyPI并在此处搜索。如果找到它们,请将它们移到YAML的 pip 部分。

删除要求

如果您知道从哪里可以找到软件包,请从YAML中将其删除,然后在激活的环境中本地安装它们。

松开版本

如果您对再现性的要求不严格,则可以始终删除版本(次要版本,主要版本),以便从Conda或PyPI安装该版本。


1 当然,如果您不熟悉频道源,请在使用之前确认它不是恶意代码。例如,下载tar.bz并进行扫描。我还没有听说过这样的攻击,但这似乎是显而易见的媒介。


软件包的特定分辨率

Spacy

搜索Anaconda存储库显示the anaconda (defaults)the conda-forge通道都没有适用于win64平台的Spacy版本。但是,有一个专用的伪造渠道,可能是最初获得该渠道的地方。因此,在YAML的渠道部分中,您可以添加

channels:
  - spacy

ptyprocess

此软件包在Anaconda Cloud的任何地方都找不到,但是在PyPI上,因此应将其移动到YAML文件的 pip 部分:

pip:
  - ptyprocess=0.5.1