我们正在使用GAE标准,并且根据google文档,我们期望使用pip install requirement-name -t lib/
在某些文件夹中供应商依赖项。
我们想在同一GAE项目中同时使用BigQuery
和pub-sub
,但我认为这并不是一个非常罕见的组合。
现在,问题是一次我们只能安装一个客户端库,因为这两个共享库都共享google>cloud
命名空间,无论以后安装的哪个命名空间都将覆盖以前的依赖关系。
屏幕截图:-
1) 仅安装BigQuery客户端库 :-
2)安装pip install -t lib/ google-cloud-pubsub
相同的问题和解决方案是什么?
更新:-
进一步尝试在虚拟环境中安装这两个依赖项,而无需在lib/
文件夹中销售,这两个依赖项都在安装时不会互相覆盖。看来问题出在文件夹中的供应商。
相同的屏幕快照,没有供应商依赖性。
答案 0 :(得分:3)
您应该在单个命令中安装所有依赖项:
$ pip install -t lib/ google-cloud-bigquery google-cloud-pubsub
这将同时安装两个软件包:
$ ls lib/google/cloud
__pycache__ _testing.py environment_vars.py obsolete.py pubsub_v1
_helpers.py bigquery exceptions.py operation.py
_http.py client.py iam.py pubsub.py
从需求文件安装依赖项应具有相同的效果:
$ cat requirements.txt
google-cloud-bigquery
google-cloud-pubsub
$ pip install -t lib/ -r requirements.txt
确保以空白的lib/
文件夹和最新版本的pip
开头:
pip install -U pip