App Engine Python 2.7 - 导入错误:无法导入名称 apiproxy

dan*_*elx 9 google-app-engine python-2.7 google-cloud-sdk

升级到 Google Cloud SDK 360.0.0-0 后,我在dev_appserver.py为 Python 2.7 App Engine 项目运行命令时开始看到以下错误。

  File "/home/..................py", line 6, in <module>
    from google.appengine.ext import ndb
  File "/usr/lib/google-cloud-sdk/platform/google_appengine/python27/sdk/google/appengine/ext/ndb/__init__.py", line 22, in <module>
    from tasklets import *
  File "/usr/lib/google-cloud-sdk/platform/google_appengine/python27/sdk/google/appengine/ext/ndb/tasklets.py", line 85, in <module>
    from .google_imports import apiproxy_stub_map
  File "/usr/lib/google-cloud-sdk/platform/google_appengine/python27/sdk/google/appengine/ext/ndb/google_imports.py", line 44, in <module>
    from google.appengine.runtime import apiproxy as callback
ImportError: cannot import name apiproxy
Run Code Online (Sandbox Code Playgroud)

gcloud版本

Google Cloud SDK 360.0.0
alpha 2021.10.04
app-engine-python 1.9.95
app-engine-python-extras 1.9.95
beta 2021.10.04
bq 2.0.71
cloud-build-local 0.5.2
cloud-datastore-emulator 2.1.0
core 2021.10.04
gsutil 5.3
Run Code Online (Sandbox Code Playgroud)

dan*_*elx 8

编辑

Google Cloud SDK 版本 371 似乎已解决此问题


在我的基于 Debian 的系统上,我通过将app-engine-python组件降级到以前的版本来修复它

sudo apt-get install google-cloud-sdk-app-engine-python=359.0.0-0
sudo apt-get install google-cloud-sdk-app-engine-python-extras=359.0.0-0
Run Code Online (Sandbox Code Playgroud)

gcloud版本(降级后)

Google Cloud SDK 360.0.0
alpha 2021.10.04
app-engine-python 1.9.94
app-engine-python-extras 1.9.95
beta 2021.10.04
bq 2.0.71
cloud-build-local 0.5.2
cloud-datastore-emulator 2.1.0
core 2021.10.04
gsutil 5.3
Run Code Online (Sandbox Code Playgroud)

我为此错误创建了一个问题:https ://issuetracker.google.com/issues/202171426