我有一个应用程序,它有许多部署到AWS中的无服务器功能。这些函数使用Python3.7运行时环境。但是昨天,在部署了一些小的更改之后,这些函数中几乎没有几个停止处理错误。
错误Runtime.ImportModuleError:无法导入模块‘functions.graphql.lambda.user.Graphql.lambda.user_balance’:没有名为'setuptools._distutils‘的模块
奇怪的是,抛出此错误的函数没有被更改,其他函数没有出现任何问题。没有添加/删除python模块。
为了检查代码更改是否与此错误有关,我尝试部署以前的版本。但错误依然存在。
我使用无服务器框架进行部署。
发布于 2020-09-01 15:27:08
似乎这是一个问题,从昨天开始发生在所有Python用户身上,因为设置工具被更新了,但是PIP没有。
根据这个GitHub问题,有一个临时的解决方法,直到实际修复为止。
设置环境变量SETUPTOOLS_USE_DISTUTILS=stdlib是一种解决办法,例如:
export SETUPTOOLS_USE_DISTUTILS=stdlib
pip3 install ....
我的假设是,您可以将它添加为Lambda的环境变量,可能是通过无服务器配置吗?
发布于 2020-09-03 08:14:45
这是setuptools https://github.com/pypa/setuptools/issues/2353中的错误。遵循下面的临时解决方案。
Linux
export SETUPTOOLS_USE_DISTUTILS=stdlib
Windows
set SETUPTOOLS_USE_DISTUTILS=stdlib
之后,执行pip命令。
pip install XXXXX
https://stackoverflow.com/questions/63688774
复制相似问题