2017-02-03 3 views
5

패키지 업데이트를 시도 할 때마다 항상이 메시지가 표시되며 일반적으로 진행하고 모든 것이 일반적으로 작동합니다. 그러나 나는 내가 의도했던 것보다 훨씬 더 복잡한 Anaconda 환경을 우연히 만들어 냈다는 것에 우려하고 있습니다. 이 스레드 (What does "the following packages will be superseded by a higher priority channel" mean?)는 다른 채널에 우선 순위를 부여하는 것에 대해 언급합니다. 그게 내가 한 짓이라면 어떻게 할 수 있니?우선 순위가 높은 채널에서 다음 패키지가 우선 적용됩니다.

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)? 

하지만 내 주요 : 나는 버전 번호를 지정하지 않은 경우, 내 플라스크 버전을 다운 그레이드 할 것으로 보인다, 그러나

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)? 

: 여기

는 메시지의 예 질문은 플라스크 버전에 관한 것이 아니라 여러 채널로 끝내기 위해 내가 한 일을 묻는 것입니다. .condarc 파일을 수정하라는 여러 의견을 보았지만 문제가 발생하지 않는다고 생각합니다 (기본값). 이 CONDA 정보에서 내 출력을하는 데 도움이 경우

은 다음과 같습니다

이 을 설치

현재 CONDA :

conda install -c anaconda flask 

conda install이 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 

답변

9

당신이 작성하는 명령은 설치 패키지 (분명히)이고, flask은 패키지의 이름입니다. .condarc 파일에 나열된 채널이 없더라도 특정 채널 을 사용하고 가장 높은 우선 순위 인을 해당 명령의 -c anaconda과 함께 사용하도록 conda에 명령합니다. 따라서 conda install은 웹에 나가서 anaconda 채널의 패키지를 선호한다고 말하면서 가능한 최상의 패키지 일치를 찾습니다. 그러나 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을 찾을 수 없으므로 설치 했으므로 아무것도 수행하지 않습니다. 그러나 해당 채널에서 condaconda-env의 버전을 찾을 수 있으므로 버전이 낮을지라도 가장 높은 우선 순위를 부여 했으므로 anaconda 채널에서 채널을 다운로드하기로 결정했습니다.
conda install -c anaconda flask 

또한이 anaconda 채널에서 찾을 수있는 모든 패키지를 찾아 간다. flask에 대한 버전을 지정하지 않았으므로 conda은 지정한 채널에서 찾을 수있는 최신 버전을 찾습니다. 이미 다른 채널 (이 경우 defaults 채널)에서 flask을 설치 했으므로 anaconda 채널에서 버전을 설치하면 보유하고있는 버전보다 우선합니다.

관련 문제