[英]How to resolve versionConflict error in Flask (PyJWT and 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'})
我也看到了類似的鏈接,我在下面引用它們,但我沒有得到任何關於如何解決它的線索。
PS值得注意的是,我嘗試安裝不同版本的 PyJWT,如1.7.1
、 2.0.0
等,但它們都不能正常工作。
Flask
(當前為 2.0.1)的最新版本似乎存在依賴問題。
通過以下命令將其降級到1.1.2
后問題得到解決:
pip install Flask==1.1.2
希望它會在不久的將來得到修復!
這解決了我的問題,而無需從頭開始制作新的 Venv/Environment:
try uninstalling Flask and all Flask Related modules and then just run pip install flask-jwt-extended
which will install flask properly again.
與flask-jwt-extended==4.3.1
一起使用,並將設置flask==2.0.2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.