我在虚拟环境中工作,但是我故意删除了虚拟环境文件夹。但是我仍然可以按以下方式运行Flask Restful应用程序,同时新的空虚拟环境(站点包中没有库,但甚至应用程序也像旧的虚拟环境一样)处于活动状态。
flask run
我认为它应该失败了,并抱怨:
没有名为flask的模块
,因为我删除了旧的正确的虚拟环境并安装了新的虚拟环境,然后将其激活。
这就是要点,当我尝试如下运行主脚本
python3 app.py
它按预期抱怨:
没有名为flask的模块
当我使用flask run
运行时,它似乎没有使用虚拟环境,甚至虚拟环境也处于活动状态。因此,我无法使用其他python版本测试应用程序,也无法测试是否已在新的其他虚拟环境中安装并运行了需求。我无法理解烧瓶的这种行为,无法获得任何帮助。
谢谢。
答案 0 :(得分:0)
您可能已全局安装了烧瓶。
点列表| grep烧瓶
您可以删除它:
pip卸载瓶
或
使用--no-site-packages选项创建virtualenv:
virtualenv-无站点软件包venv
来源venv / bin / activate
答案 1 :(得分:0)
好吧,我弄清楚那里发生了什么。
Flask在home中创建了一个名为local的目录,并移动了系统的解释程序以及我编写的flask应用程序所包含的依赖项。
然后,当它与flask run
运行时,它将从那里部署应用程序。因此,这意味着我的flask应用程序未在我们猜测的虚拟环境中运行。
因此,在那种情况下,我重新创建了虚拟环境,并在安装依赖项后使用python3 app.py
运行。现在看来,它使用了虚拟环境依赖项和解释器。