Conda无法分析要求.yml使用频道时

2024-05-14 20:13:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用miniconda创建一个环境,方法是使用从另一个conda环境生成的requirements.yml文件。我对来自频道的包裹有问题。在

在计算机上,使用以下命令从现有环境生成requirements.yml

(myenv)$ conda env export > requirements.yml

requirements.yml文件的内容是(清除版本号后):

^{pr2}$

上述软件包已通过指定通道“手动”安装,例如

$(myenv) conda install -c conda-forge pytest-xdist

requirements.yml传输到另一台机器(相同的体系结构,linux-64),conda无法创建新环境:

$ conda env create --file requirements.yml

Fetching package metadata .......
Solving package specifications: .
Error: Packages missing in current linux-64 channels: 
  - conda-forge::pytest-xdist
  - auto::pycallgraph
  - conda-forge::flask-restful
  - conda-forge::flask-httpauth
  - blaze::flask-mongoengine
  - hugo::flask-security
  - conda-forge::mongoengine

conda似乎无法解析语法<channel>::<package name>。在

使用的系统:docker image ContinuMio/miniconda。在

你对如何从规范文件中创建一个新的环境有什么想法吗?在


Tags: 文件envflaskpackage环境pytestlinuxyml
1条回答
网友
1楼 · 发布于 2024-05-14 20:13:42

解决方案1:

将conda更新到4.2.12版本(在我的例子中是4.1)

conda update conda

然后通过加载需求文件来创建环境

^{pr2}$

解决方案2:

在文件的channels部分中添加频道名称,并在包列表中删除频道名称:

name: myenv
channels: !!python/tuple
- !!python/unicode
  'defaults'
- !!python/unicode
  'auto'
- !!python/unicode
  'conda-forge'
- !!python/unicode
  'blaze'
- !!python/unicode
  'hugo'
dependencies:
- pytest
- pytest-xdist
- pytest-cov
- numpy
- scipy
- pymongo
- pycallgraph
- flask
- flask-restful
- flask-httpauth
- flask-mongoengine
- flask-security
- flask-wtf
- wtforms
- mongoengine
- pip:
 - descartes
prefix: .miniconda2/envs/myenv

相关问题 更多 >

    热门问题