当我尝试更新包时,我总是收到这个消息,我通常只是继续进行,一切都会正常进行。但我担心我意外地创建了一个比我想要的复杂得多的Anaconda环境。这个线程(What does "the following packages will be superseded by a higher priority channel" mean?)提到给予其他通道更高的优先级。如果这就是我所做的,我怎么能撤销它呢?
下面是该消息的一个示例:
conda install -c anaconda flask=0.12
Fetching package metadata .............
Solving package specifications: .
Package plan for installation in environment C:\Users\HMGSYS\Anaconda3:
The following packages will be SUPERCEDED by a higher-priority channel:
conda: 4.3.8-py35_0 --> 4.2.13-py35_0 anaconda
conda-env: 2.6.0-0 --> 2.6.0-0 anaconda
Proceed ([y]/n)?
但是,如果我不指定版本号,它似乎想要降级我的flask版本:
conda install -c anaconda flask
Fetching package metadata .............
Solving package specifications: .
Package plan for installation in environment C:\Users\HMGSYS\Anaconda3:
The following packages will be UPDATED:
anaconda: 4.3.0-np111py35_0 --> custom-py35_0 anaconda
The following packages will be SUPERCEDED by a higher-priority channel:
conda: 4.3.8-py35_0 --> 4.2.13-py35_0 anaconda
conda-env: 2.6.0-0 --> 2.6.0-0 anaconda
flask: 0.12-py35_0 --> 0.11.1-py35_0 anaconda
Proceed ([y]/n)?
但我的主要问题不是关于flask版本,而是问我做了什么才能得到多个通道,以及如何将其简化为一个通道。我已经看到一些建议修改.condarc文件的注释,但我没有注释(这是默认的),所以我不认为这是造成问题的原因。
如果这有帮助,我从conda info得到的输出是:
当前conda安装:
platform : win-64
conda version : 4.3.8
conda is private : False
conda-env version : 4.3.8
conda-build version : 2.1.3
python version : 3.5.2.final.0
requests version : 2.12.4
root environment : C:\Users\HMGSYS\Anaconda3 (writable)
default environment : C:\Users\HMGSYS\Anaconda3
envs directories : C:\Users\HMGSYS\Anaconda3\envs
package cache : C:\Users\HMGSYS\Anaconda3\pkgs
channel URLs : https://repo.continuum.io/pkgs/free/win-64
https://repo.continuum.io/pkgs/free/noarch
https://repo.continuum.io/pkgs/r/win-64
https://repo.continuum.io/pkgs/r/noarch
https://repo.continuum.io/pkgs/pro/win-64
https://repo.continuum.io/pkgs/pro/noarch
https://repo.continuum.io/pkgs/msys2/win-64
https://repo.continuum.io/pkgs/msys2/noarch
config file : None
offline mode : False
user-agent : conda/4.3.8 requests/2.12.4 CPython/3.5.2 Windows/10 Windows/10.0.14393
发布于 2017-02-03 20:44:24
您正在编写的命令是
conda install -c anaconda flask
conda install
告诉Conda安装一个包(很明显),而flask
是包的名称。尽管您的.condarc
文件中可能没有列出任何通道,但是您告诉conda使用特定的通道,并通过该命令的-c anaconda
部分为其提供最高优先级的。因此,考虑到你告诉conda install
应该更喜欢来自anaconda
频道的包,它会在web上找到它能找到的最匹配的包。但是,anaconda
频道上没有flask=0.12
,他们(针对您的平台)拥有的最高版本是flask=0.11.1
。您可以在这里查看他们在该频道上提供的所有版本的列表:https://anaconda.org/anaconda/flask/files
所以这是正在发生的事情
conda install -c anaconda flask=0.12
去查找它可以从anaconda
通道中找到的所有包。它找不到适用于您的平台的flask=0.12
,所以既然您已经安装了它,它就什么也做不了。但是,它确实在该通道上找到了conda
和conda-env
的版本,因此它决定从anaconda
通道下载它们,因为您给了它最高的优先级,即使版本较低。
conda install -c anaconda flask
还可以从anaconda
通道中查找它可以找到的所有包。由于您没有为flask
指定版本,因此conda
将在您指定的频道上查找它能找到的最新版本。由于您已经从另一个通道(在本例中为defaults
通道)安装了flask
,因此从anaconda
通道安装该版本将取代您已有的版本。
https://stackoverflow.com/questions/42015732
复制相似问题