Prompting "ImportError: No module named py27_urlquote" when running dev_appserver.py on Google Cloud SDK

Prompting "ImportError: No module named py27_urlquote" when running dev_appserver.py on Google Cloud SDK

当我在 google-cloud-sdk 上 运行 dev_appserver.py 时,我得到 ImportError: No module named py27_urlquote.

Traceback (most recent call last):
  File "/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 109, in <module>
    _run_file(__file__, globals())
  File "/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 103, in _run_file
    _execfile(_PATHS.script_file(script_name), globals_)
  File "/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/dev_appserver.py", line 83, in _execfile
    execfile(fn, scope)
  File "/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/devappserver2.py", line 44, in <module>
    from google.appengine.tools.devappserver2 import dispatcher
  File "/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/dispatcher.py", line 43, in <module>
    from google.appengine.tools.devappserver2 import module
  File "/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/module.py", line 39, in <module>
    import py27_urlquote
ImportError: No module named py27_urlquote

我试过以下方法:

  1. 重新安装 Cloud SDK
  2. 了解 py27_urlquote 模块(我找不到任何此类信息...)
  3. 将CLOUDSDK_PYTHON的版本改为2.7或3.8,执行

目前这是一个 public 问题,我们的 Google 工程团队目前正在解决该问题。已为您 运行 您的本地开发服务器提供了解决方法:

  1. 为 Python 2
  2. 安装 pip
sudo apt update
sudo apt install python-pip
  1. 安装 urlquote 而不是 py27_urlquote
pip install urlquote
  1. 根据错误消息
  2. 修改位于您本地目录的module.py
/Users/user/Downloads/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/module.py
  1. py27_urlquote 替换为 urlquote。有 3 行代码使用 py27_urlquote。特别是第 39、833 和 836 行。

您可以查看与您的问题类似的public tracker,以获取更多信息和更新。

我刚刚在SDK版本359.0.0上也遇到了这个问题

我没有手动更新 SDK 文件,而是选择降级到以前的版本。

我发现版本 357.0.0 工作正常。

要降级,运行以下命令:

gcloud components update --version 357.0.0