如何解决来自gcloud SDK的bq在虚拟环境中不起作用
在Ubuntu中的python虚拟环境中运行bq会导致以下ImportError
:
Traceback (most recent call last):
File "/snap/google-cloud-sdk/157/platform/bq/bq.py",line 60,in <module>
import oauth2client_4_0.service_account
File "/snap/google-cloud-sdk/157/platform/bq/third_party/oauth2client_4_0/service_account.py",line 27,in <module>
from oauth2client_4_0 import crypt
File "/snap/google-cloud-sdk/157/platform/bq/third_party/oauth2client_4_0/crypt.py",line 24,in <module>
from oauth2client_4_0 import _pure_python_crypt
File "/snap/google-cloud-sdk/157/platform/bq/third_party/oauth2client_4_0/_pure_python_crypt.py",line 25,in <module>
from pyasn1_modules.rfc2459 import Certificate
File "/snap/google-cloud-sdk/157/platform/bq/third_party/pyasn1_modules/rfc2459.py",line 21,in <module>
from pyasn1.type import opentype
ImportError: cannot import name 'opentype'
可以很容易地在新版GCE上以及在安装了gcloud的本地系统上复制该内容。
~ lsb_release --al
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.1 LTS
Release: 20.04
Codename: focal
~ python --version
Python 3.8.5
~ python3 -m venv .venv
~ source ./.venv/bin/activate
~ bq version
在此pyasm1
中安装软件包pyasm1-modules
和venv
并没有帮助,还尝试了这些软件包的几种不同版本。
顺便说一句:bq
命令在没有virtualenv
的情况下可以正常工作。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。