首页 文章

gsutil不再有效?

提问于
浏览
7

我一直在使用gcloud和gsutil一段时间,但现在我突然发现任何gsutil命令我得到错误:

Traceback (most recent call last):
  File "/Users/julian/google-cloud-sdk/bin/bootstrapping/gsutil.py", line 12, in 
    import bootstrapping
  File "/Users/julian/google-cloud-sdk/bin/bootstrapping/bootstrapping.py", line 22, in 
    from googlecloudsdk.core.credentials import store as c_store
  File "/Users/julian/google-cloud-sdk/lib/googlecloudsdk/core/credentials/store.py", line 27, in 
    from googlecloudsdk.core import http
  File "/Users/julian/google-cloud-sdk/lib/googlecloudsdk/core/http.py", line 31, in 
    from googlecloudsdk.core.resource import session_capturer
  File "/Users/julian/google-cloud-sdk/lib/googlecloudsdk/core/resource/session_capturer.py", line 32, in 
    from googlecloudsdk.core.resource import yaml_printer
  File "/Users/julian/google-cloud-sdk/lib/googlecloudsdk/core/resource/yaml_printer.py", line 17, in 
    from googlecloudsdk.core.resource import resource_printer_base
  File "/Users/julian/google-cloud-sdk/lib/googlecloudsdk/core/resource/resource_printer_base.py", line 38, in 
    from googlecloudsdk.core.resource import resource_projector
  File "/Users/julian/google-cloud-sdk/lib/googlecloudsdk/core/resource/resource_projector.py", line 34, in 
    from google.protobuf import json_format as protobuf_encoding
ImportError: cannot import name json_format

我尝试了gcloud update和gcloud重新安装,但仍然遇到同样的问题 . 是否与python安装有冲突?还有其他想法吗?

5 回答

  • 0

    您还可以通过更新到最新版本的protobuf来修复此错误 . 然后你不必降级gcloud .

    pip install protobuf --upgrade
    
  • 0

    如果您安装了google protobuf软件包,则会出现此问题 .

    您可以通过运行使用旧版本来解决此问题

    gcloud components update --version 175.0.0
    

    或通过删除谷歌protobuf包python安装 .

    pip remove protobuf
    

    如果你不想做其中任何一个,他们可以安装一个单独的2.7 python版本(没有protobuf)并设置CLOUDSDK_PYTHON = / path / to / python环境变量 .

    另外下一个版本的 Cloud sdk应该有这个修复 .

  • 2

    我遇到过同样的问题 . 我正在使用mac . 查看/usr/local/lib/python2.7/site-packages我发现了一个自制的protobuf链接 . 我用“rm homebrew-protobuf.pth”将其删除然后gsutil开始工作了 .

  • 0

    对于使用Google Cloud SDK rpm安装的CentOS 7.5(可能更早),删除protobuf-python包 yum remove protobuf-python 将解决此问题 .

  • 6

    我通过更新 protobuf 的自制软件安装来解决这个问题:

    $ brew upgrade protobuf
    ...
    ==> Upgrading 1 outdated package, with result:
    protobuf 2.6.1 -> 3.6.0
    ...
    

    请参阅gsutil GitHub仓库中的this issue .

相关问题