如何解决如何解决 Flask 中的 versionConflict 错误PyJWT 和 Flask-JWT-Extended
我想使用 Flask
框架运行一个非常简单的应用程序。我之前也运行和开发过 Flask 应用程序。一段时间后,我需要使用它开发一个新的简单应用。
所以我创建了一个虚拟环境并激活了它:
virtualenv venv
source venv/bin/activate
python --version # prints 3.8.6
pip --version # prints pip 20.3.1
然后安装Flask
:
(venv) pip install -U Flask
这是我的 hello world
代码:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello,World!"
每当我运行 flask run
命令时,我都会遇到以下错误:
raise VersionConflict(dist,req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (PyJWT 2.0.0 (/home/user/.local/lib/python3.8/site-packages),Requirement.parse('PyJWT<2.0,>=1.6.4'),{'Flask-JWT-Extended'})
我也看到了我在下面引用它们的类似链接,但我没有任何关于如何解决它的线索。
P.S 值得注意的是,我曾尝试安装不同版本的 PyJWT,例如 1.7.1
、2.0.0
等,但它们都无法正常工作。
解决方法
请务必pip install --upgrade flask-jwt-extended
。最新版本的 flask 2.x.x
和 PyJWT 2.x.x
应该可以正常工作。
版本:
Flask==2.0.1
PyJWT==2.1.0
Flask_JWT_Extended==4.2.1
有关更多详细信息,您可以查看以下链接: link1 | link2
,似乎最新版本的 Flask
(目前为 2.0.1)存在依赖问题。
通过以下命令将其降级为 1.1.2
后问题已解决:
pip install Flask==1.1.2
希望它会在不久的将来修复!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。