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

如何修复Google Cloud SDK安装时collections模块无Mapping属性的AttributeError?

macOS安装Google Cloud SDK出现collections.Mapping报错解决方案

报错内容:

Welcome to the Google Cloud SDK!
Traceback (most recent call last):
  File "/Users/kaab/google-cloud-sdk/bin/bootstrapping/install.py", line 12, in <module>
    import bootstrapping
  File "/Users/kaab/google-cloud-sdk/bin/bootstrapping/bootstrapping.py", line 46, in <module>
    from googlecloudsdk.core.updater import update_manager
  File "/Users/kaab/google-cloud-sdk/lib/googlecloudsdk/core/updater/update_manager.py", line 39, in <module>
    from googlecloudsdk.core.console import progress_tracker
  File "/Users/kaab/google-cloud-sdk/lib/googlecloudsdk/core/console/progress_tracker.py", line 651, in <module>
    class _BaseStagedProgressTracker(collections.Mapping):
AttributeError: module 'collections' has no attribute 'Mapping'

报错原因

该报错由Python版本与旧版Google Cloud SDK不兼容导致:Python 3.10及以上版本将原collections模块下的抽象基类(包含Mapping)全部迁移到了collections.abc子模块,旧版SDK调用已废弃的属性就会触发该异常。

解决方案

  • 方案1:指定兼容Python版本运行安装脚本

    1. 先通过Homebrew安装Python3.9版本:
      brew install python@3.9
    2. 执行安装命令时指定SDK使用的Python版本:
      CLOUDSDK_PYTHON=python3.9 ./google-cloud-sdk/install.sh
    3. 若要永久生效,可将环境变量写入终端配置文件:
      执行echo 'export CLOUDSDK_PYTHON=python3.9' >> ~/.zshrc(zsh用户)或echo 'export CLOUDSDK_PYTHON=python3.9' >> ~/.bash_profile(bash用户),重启终端即可。
  • 方案2:直接修改源码适配高版本Python

    打开报错提示的文件/Users/kaab/google-cloud-sdk/lib/googlecloudsdk/core/console/progress_tracker.py,将第651行的collections.Mapping修改为collections.abc.Mapping,保存后重新运行安装程序即可。

  • 方案3:重新下载最新版SDK

    该兼容问题已在新版Google Cloud SDK中修复,直接下载官方最新安装包重新安装即可避免该报错。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 08:06:01