---问题已结束
这是我的错误,我的uWSGI启动脚本切换到了另一个virtualenv。
---原始问题
我正在尝试将Flask应用服务器中的推送通知发布到Android APP。
服务器环境(dev):
将代码作为Flask应用程序运行以初始化SDK时,import语句会引发错误:
import firebase_admin
ModuleNotFoundError:没有名为“ firebase_admin”的模块
但是,在Python解释器模式下的import语句之上运行不会产生任何错误。 PyCharm还能够识别firebase_admin
模块。这三种设置(Flask应用程序,解释器,PyCharm)都使用相同的virtualenv。
我尝试了一些较旧的SDK版本,但错误仍然存在。有任何线索吗?
---更多详细信息
该模块是使用命令pip install firebase-admin
从virtualenv中的命令行安装的。
在同一virtualenv内从命令行以Flask + uWSGI应用程序运行代码时发生错误。 pip freeze
显示该模块确实存在。
---问题已结束
这是我的错误,我的uWSGI启动脚本切换到了另一个virtualenv。
答案 0 :(得分:0)
如何将firebase_admin
软件包安装/添加到项目中?
如果您还没有明确安装/添加软件包,我只会遇到几种情况(也可能有其他情况/解决方案),这会产生错误ModuleNotFoundError: No module named 'firebase_admin'
:
如果使用PyCharm,则可以从PyCharm偏好设置中安装/添加
firebase-admin
我使用Visual Studio Code,并选择使用保存在根目录中的firebase_admin
文件将requirements.txt
库安装到virtualenv中。即使您使用的是PyCharm,您仍然可以使用此方法:
1)激活您的环境
2)创建一个包含以下内容的requirements.txt
文件:
firebase_admin
// other packages
3)运行pip install
pip install -r requirements.txt
4)安装后,您可以通过检查以下目录中的site-packages
文件夹来确认该文件夹已经可用:
env/lib/site-packages/firebase_admin
env/lib/site-packages/firebase_admin-<version>.dist-info
5)尝试再次运行代码。
希望有帮助!
答案 1 :(得分:0)
运行此命令 pip安装firebase-admin flask