我正在开发一个简单的Flask应用程序,但是我收到了这个错误。
from click.core import ParameterSource
ImportError: cannot import name 'ParameterSource' from 'click.core' (/usr/local/lib/python3.10/dist-packages/click/core.py)
我不知道为什么它会出现,因为一切都很好,然后突然...
这是我使用的版本:
black 23.1.0
click 8.1.3
Flask 2.2.3
Python 3.10.6
pip 22.0.2
我一直在寻找解决方案,发现很多人都无法处理这个问题,唯一的建议是更新 Click 和 black 到最新版本,但我已经使用了最新版本。
我该怎么办?有没有任何方法可以完全不使用 Click?
更新:
以下是完整错误信息的样子。
Traceback (most recent call last):
File "/usr/lib/python3.10/runpy.py", line 187, in _run_module_as_main
mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
File "/usr/lib/python3.10/runpy.py", line 146, in _get_module_details
return _get_module_details(pkg_main_name, error)
File "/usr/lib/python3.10/runpy.py", line 110, in _get_module_details
__import__(pkg_name)
File "/home/diametr/.local/lib/python3.10/site-packages/flask/__init__.py", line 5, in <module>
from .app import Flask as Flask
File "/home/diametr/.local/lib/python3.10/site-packages/flask/app.py", line 34, in <module>
from . import cli
File "/home/diametr/.local/lib/python3.10/site-packages/flask/cli.py", line 15, in <module>
from click.core import ParameterSource
ImportError: cannot import name 'ParameterSource' from 'click.core' (/usr/local/lib/python3.10/dist-packages/click/core.py)
ParameterSource
是3年前添加的。您是否将此 Flask 应用程序部署到另一台服务器上?您确定它们的版本兼容吗? - Tim RobertsParameterSource
吗? - Tim Robertspython3.10
中没有dist-packages
文件夹怎么办?python3.10
中唯一的文件夹是site-packages
。 - Diana/usr/local/lib/python3.10/dist-packages
这个路径。确定你在正确的位置查找了吗? - Tim Roberts