【问题标题】:How to manage library dependency for Google Cloud Library如何管理 Google Cloud 库的库依赖关系
【发布时间】:2022-10-25 15:22:37
【问题描述】:

我的主要问题是:有什么方法可以有效地管理 GCP 库和 Google SDK,以免出现依赖问题? 目前我在 python 上有以下 GCP 库:

google-api-core==1.32.0
google-apitools==0.5.32
google-cloud==0.34.0
google-cloud-bigquery==1.8.1
google-cloud-core==0.29.1
google-cloud-datastore==1.7.4
google-cloud-storage==1.14.0
google-cloud-vision==0.36.0
google-compute-engine==2.8.13
google-cloud-dataproc==4.0.3
google-api-python-client==2.52.0
google-crc32c==1.3.0
google-pasta==0.2.0
google-resumable-media==0.3.2
googleapis-common-protos==1.56.3

我想安装 google-cloud-bigquery-reservation==1.6.3 但是,我使用pip install安装并尝试使用后,会出现以下错误。从堆栈看起来像

Traceback (most recent call last):
  File "scripts/data_creation_scripts/make_model_external_data.py", line 12, in <module>
    from definition.phase_data_generator import ModelExternalDataGenerator
  File "/home/batch/dsp-content-ad-model/releases/20221020101735Z/src/python/definition/phase_data_generator.py", line 1, in <module>
    from dataset_module.base_dataset import AbstractDataSet
  File "/home/batch/dsp-content-ad-model/releases/20221020101735Z/src/python/dataset_module/base_dataset.py", line 7, in <module>
    from bq_extract_module.bq_table_creator import BqTableCreatorFactory
  File "/home/batch/dsp-content-ad-model/releases/20221020101735Z/src/python/bq_extract_module/bq_table_creator.py", line 6, in <module>
    from utils.bq_query_executor import BqExecutorFactory
  File "/home/batch/dsp-content-ad-model/releases/20221020101735Z/src/python/utils/bq_query_executor.py", line 13, in <module>
    from utils import bq_utils
  File "/home/batch/dsp-content-ad-model/releases/20221020101735Z/src/python/utils/bq_utils.py", line 9, in <module>
    from utils.flex_slots import FlexSlotUtil
  File "/home/batch/dsp-content-ad-model/releases/20221020101735Z/src/python/utils/flex_slots.py", line 1, in <module>
    from google.cloud.bigquery_reservation_v1 import *
  File "/home/batch/.local/lib/python3.6/site-packages/google/cloud/bigquery_reservation_v1/__init__.py", line 17, in <module>
    from .services.reservation_service import (
  File "/home/batch/.local/lib/python3.6/site-packages/google/cloud/bigquery_reservation_v1/services/reservation_service/__init__.py", line 16, in <module>
    from .async_client import ReservationServiceAsyncClient
  File "/home/batch/.local/lib/python3.6/site-packages/google/cloud/bigquery_reservation_v1/services/reservation_service/async_client.py", line 39, in <module>
    from google.cloud.bigquery_reservation_v1.services.reservation_service import pagers
  File "/home/batch/.local/lib/python3.6/site-packages/google/cloud/bigquery_reservation_v1/services/reservation_service/pagers.py", line 27, in <module>
    from google.cloud.bigquery_reservation_v1.types import reservation
  File "/home/batch/.local/lib/python3.6/site-packages/google/cloud/bigquery_reservation_v1/types/__init__.py", line 16, in <module>
    from .reservation import (
  File "/home/batch/.local/lib/python3.6/site-packages/google/cloud/bigquery_reservation_v1/types/reservation.py", line 60, in <module>
    class Reservation(proto.Message):
  File "/home/batch/.local/lib/python3.6/site-packages/proto/message.py", line 222, in __new__
    field=[i.descriptor for i in fields],
  File "/home/batch/.local/lib/python3.6/site-packages/proto/message.py", line 222, in <listcomp>
    field=[i.descriptor for i in fields],
  File "/home/batch/.local/lib/python3.6/site-packages/proto/fields.py", line 113, in descriptor
    proto3_optional=self.optional,
ValueError: Protocol message FieldDescriptorProto has no "proto3_optional" field.

【问题讨论】:

  • 您目前是在 Cloud Shell 上的虚拟环境下吗?

标签: python-3.x google-cloud-platform


【解决方案1】:

以下是在您的 Cloud Shell 上安装虚拟环境的代码,以防您不使用它:

pip install virtualenv
virtualenv <your-env>
source <your-env>/bin/activate

然后,安装google-cloud-bigquery-reservation==1.6.3

pip install google-cloud-bigquery-reservation==1.6.3

这是我复制的结果:


如果您仍然遇到同样的错误,请检查您的protobuf 并确保您拥有最新版本或至少protobuf==3.19.0 版本。

只需对我的案件结果发表评论即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-17
    • 2020-06-14
    • 2015-08-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多