烧瓶的虚拟环境已用完



我在虚拟环境中工作,但我故意删除了虚拟环境文件夹。但我仍然可以运行flask restful应用程序,如下所示,而新的空虚拟环境(站点包中没有库,但即使是应用程序也像旧的虚拟环境一样工作(是活动的。

flask run 

我认为它应该失败了,并抱怨道:

没有命名为烧瓶的模块

,因为我删除了旧的合适的虚拟环境并安装了新的虚拟环境,然后激活了它。

重点是,当我尝试运行下面的主脚本时

python3 app.py

正如预期的那样:

没有命名为烧瓶的模块

当我使用flask run运行时,它似乎没有使用虚拟环境,即使虚拟环境是活动的。由于这个原因,我无法用其他python版本测试我的应用程序,也无法测试需求是否在新的其他虚拟环境中安装和运行。我无法理解烧瓶的这种行为,我很感激。

提前谢谢。

您可能已经全局安装了Flask

pip list | grep flask

你可以删除:

pip uninstall flask

使用--no-site-packages选项创建virtualenv

virtualenv --no-site-packages .venv
source .venv/bin/activate
or 
python3 -m venv .venv
source .venv/bin/activate

我弄清楚了那里发生了什么。

Flask在home中创建了一个名为local的目录,并将我编写的Flask应用程序中包含的系统解释器和依赖项移到了那个里。

然后,当使用flask run运行时,它从那里部署应用程序。这意味着我的flask应用程序并没有像我们猜测的那样在虚拟环境中运行。

因此,在这种情况下,我重新创建了我的虚拟环境,在安装了依赖项之后,我使用python3 app.py运行。现在看来,它使用了虚拟环境依赖项和解释器。

相关内容

  • 没有找到相关文章

最新更新