发现的虚拟环境似乎已损坏| python诗歌

时间:2020-04-21 19:30:07

标签: rasa python-poetry

我正在按照以下链接在系统上安装RASA:https://github.com/RasaHQ/rasa 但是不幸的是,在尝试安装依赖项或以下用Makefile编写的任何诗歌命令时,

$poetry run
$poetry install

我遇到以下错误:

enter image description here

似乎虚拟环境设置中存在一些问题,但不知道如何解决。以下是堆栈跟踪:

$ make install
poetry run python -m pip install -U 'pip<20'
The virtual environment found in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6 seems to be broken.
Recreating virtualenv rasa-LHgLSZoI-py3.6 in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6

[CalledProcessError]
Command '['/home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6/bin/python', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
Makefile:43: recipe for target 'install' failed
make: *** [install] Error 1

5 个答案:

答案 0 :(得分:2)

如果您遇到虚拟环境损坏的错误,例如

The virtual environment found in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.7 seems to be broken

然后在相应的python包(例如python3.6,python3.5)中安装venv。就我而言,我正在使用python 3.7

sudo apt-get install python3.7-venv

其他方法是禁用虚拟环境

poetry config virtualenvs.create false

答案 1 :(得分:0)

我需要的是Kamaldeep Singh的答案:sudo apt-get install python3.7-venv

需要添加一些细节来完成此过程(这适用于像我这样不太喜欢使用杂物包版本并且对于使用Poetry可能还很陌生的人)(针对您要使用的Python版本进行调整) :

  • 转到您的项目目录并开始诗歌(如果您还没有的话);摆脱损坏的虚拟环境,

     cd your_project_directory
     poetry shell
     poetry env remove python3.7
    
  • 离开诗歌(我发现诗歌变得混乱),

     exit
    
  • 您已经按照Kamaldeep Singh的回答安装了python3.7-venv吗?如果现在不这样做(假设您使用的是基于Debian / Ubuntu的系统),

     sudo apt install python3.7-venv
    
  • 重新输入诗歌

     poetry shell
    
  • 在安装了python3.7-venv之后重新创建环境,

     poetry env use python3.7
    
  • 为您的项目添加所需的依赖项,

     poetry install
    

就是这样,您现在应该准备在新的Python版本中处理项目。 Poetry CLI documentation以获得更多选择...

(更新:有点奇怪:我发现找到poetry shell是必要的,poetry install之后又退出了pytest。并重新输入步骤(再次)感到非常笨拙,也许有人可以解释为什么在注释中可能需要这样做?)

答案 2 :(得分:0)

也要注意基础文件结构!

我重命名了打开终端所在的文件夹后,我打开了VScode终端,甚至。终端保留了先前的文件夹名称,并且诗歌抱怨与上述相同的消息,无论我重新创建.venv

我要做的就是cd ../new_folder_name,然后再次重新创建.venv

答案 3 :(得分:-1)

对于诸如此类的诗歌问题,有时最简单的方法是删除诗歌创建的虚拟环境并重新运行make install,以便重新开始。

答案 4 :(得分:-1)

您的主机上安装的python版本可能与项目要求不符。

您可以通过首先使用virtualenv或pyenv设置虚拟环境来克服这一问题。

示例

cd <your-project-folder>
virtualenv env -p python3.8
source env/bin/activate  

最后

$ poetry install