以下程序包将由更高优先级的通道进行超级处理

jss*_*367 7 python anaconda conda

当我尝试更新软件包时,我始终收到此消息,而且我通常只是继续进行,一切都正常.但是我担心我不小心创造了一个比我想要的更复杂的Anaconda环境.这个帖子("以下包将被更高优先级的频道取代"是什么意思?)提到给予其他频道更高的优先级.如果这就是我所做的,我怎么能撤消它呢?

以下是该消息的示例:

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)?
Run Code Online (Sandbox Code Playgroud)

但是,如果我没有指定版本号,它似乎想要降级我的烧瓶版本:

 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)?
Run Code Online (Sandbox Code Playgroud)

但我的主要问题不是关于烧瓶版本,而是问我做了多少渠道,以及如何将其简化为一个.我已经看到几条建议修改.condarc文件的评论,但我没有(这是默认的)所以我认为这不会产生问题.

如果这有帮助,我的conda信息输出是:

目前的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
Run Code Online (Sandbox Code Playgroud)

dar*_*ith 12

你正在写的命令是

conda install -c anaconda flask
Run Code Online (Sandbox Code Playgroud)

conda install告诉Conda安装一个软件包(显然),并且flask是软件包的名称.虽然您的文件中可能没有列出任何频道.condarc,但您告诉conda使用特定频道,使用-c anaconda该命令的一部分为其提供最高优先级.因此conda install,考虑到你告诉它它应该更喜欢来自anaconda频道的包,所以去网上找到最好的包匹配.但是,anaconda频道没有flask=0.12它,它们拥有的最高版本(对于您的平台)是flask=0.11.1.您可以在此处查看该频道上可用的所有版本的列表:https://anaconda.org/anaconda/flask/files

所以这就是发生的事情

conda install -c anaconda flask=0.12
Run Code Online (Sandbox Code Playgroud)

去寻找它可以从anaconda频道找到的所有包.它无法找到flask=0.12适合您的平台,所以既然已安装它,它什么都不做.然而,它确实找到的版本conda,并conda-env在该通道,所以决定从下载这些anaconda通道,因为你给了它最高的优先级,即使版本过低.

conda install -c anaconda flask
Run Code Online (Sandbox Code Playgroud)

也去寻找它可以从anaconda频道找到的所有包.由于您未指定版本flask,因此conda查找可在您指定的频道上找到的最新版本.由于您已经flask从不同的频道(在本例中为defaults频道)安装,因此从anaconda频道安装版本将取代您拥有的版本.