You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用asdf安装pre-commit 3.0.1后出现importlib.metadata缺失错误

pre-commit 3.0.1 运行报错:ModuleNotFoundError: No module named 'importlib.metadata'

通过asdf工具安装pre-commit 3.0.1版本后,执行pre-commit -v命令时触发以下错误:

Traceback (most recent call last):
  File "/Users/san/.cache/pre-commit-zipapp/6Bkef3U7os33XPapd4VZ7HEfyUexbeBTjOn51afz0r8/python", line 47, in <module>
    raise SystemExit(main())
  File "/Users/san/.cache/pre-commit-zipapp/6Bkef3U7os33XPapd4VZ7HEfyUexbeBTjOn51afz0r8/python", line 34, in main
    runpy.run_module(args.m, run_name='__main__', alter_sys=True)
  File "/Users/san/.pyenv/versions/3.7.9/lib/python3.7/runpy.py", line 205, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/Users/san/.pyenv/versions/3.7.9/lib/python3.7/runpy.py", line 96, in _run_module_code
    mod_name, mod_spec, pkg_name, script_name)
  File "/Users/san/.pyenv/versions/3.7.9/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/Users/san/.cache/pre-commit-zipapp/6Bkef3U7os33XPapd4VZ7HEfyUexbeBTjOn51afz0r8/wheels/pre_commit-3.0.1-py2.py3-none-any.whl/pre_commit/__main__.py", line 3, in <module>
    
  File "/Users/san/.cache/pre-commit-zipapp/6Bkef3U7os33XPapd4VZ7HEfyUexbeBTjOn51afz0r8/wheels/pre_commit-3.0.1-py2.py3-none-any.whl/pre_commit/main.py", line 9, in <module>
  File "/Users/san/.cache/pre-commit-zipapp/6Bkef3U7os33XPapd4VZ7HEfyUexbeBTjOn51afz0r8/wheels/pre_commit-3.0.1-py2.py3-none-any.whl/pre_commit/constants.py", line 3, in <module>
ModuleNotFoundError: No module named 'importlib.metadata'

环境信息

  • Python版本:3.7.9
  • asdf版本:v0.11.1

解决方法

方案1:安装兼容的importlib-metadata包

Python 3.7中importlib.metadata并非标准库自带,需要安装backport版本。执行以下命令:

pip install importlib-metadata==4.13.0

(注:4.13.0是支持Python 3.7的最高版本,更高版本不再兼容3.7)

方案2:升级Python版本

Python 3.8及以上版本已将importlib.metadata纳入标准库,无需额外安装依赖。通过asdf升级Python:

asdf install python 3.8.18
asdf global python 3.8.18

方案3:确保在asdf管理的Python环境中安装依赖

如果使用多个Python环境,先激活目标环境再安装:

asdf local python 3.7.9
pip install importlib-metadata==4.13.0

内容的提问来源于stack exchange,提问作者SANN3

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 02:25:16