Azure命令列工具,无法汇入'cygrpc'

ryevplcw  于 2022-11-17  发布在  其他
关注(0)|答案(2)|浏览(99)

我正在学习关于Microsoft's website的Azure函数教程,我逐字逐句地遵循它,但是,当我在错误日志中运行本地服务器func host start时,我看到ImportError: cannot import name 'cygrpc'
所有错误似乎都来自azure-functions-core-tools C:\Users\XXX\AppData\Roaming\npm\node_modules\azure-functions-core-tools
下面是带有回溯的full logs

hiz5n14c

hiz5n14c1#

如果您使用的是32位python,则会出现此错误,其Github page上当前存在一个未决问题。
如果你使用pyenv来管理你的安装,你首先要验证你使用的是python上的64 bit版本。要做到这一点,请打开一个终端并运行python,如果你运行的是64 bit版本,你应该看到:

Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

如果你看到你正在运行32 bit python,那么你需要安装正确的版本。

pyenv install -l

你会得到一个所有可用Python版本的列表。64 bit版本通常共享类似的前缀amd64,所以查找你想要的带有该前缀的版本并安装它。截至2019年9月10日,Azure功能只支持3.6.x,我安装了3.6.5-amd64,还有3.6.8-amd64

pyenv install 3.6.5-amd64

然后,您可以使用以下命令验证已安装的版本:

pyenv versions
e0bqpujr

e0bqpujr2#

即使版本匹配,我也遇到了同样的问题,但是在func start之前运行func init为我解决了这个问题。

相关问题