簡體   English   中英

某些 AWS lambda 函數停止工作並出現“No module named setuptools._distutils”錯誤

[英]Some AWS lambda functions stopped working with "No module named setuptools._distutils" error

我有一個應用程序,其中有許多部署到 AWS lambda 的無服務器函數。這些函數使用 Python 3.7 運行時環境。 但是昨天在部署了一些小的更改之后,這些功能中很少有停止工作的錯誤。

[錯誤] Runtime.ImportModuleError:無法導入模塊'functions.graphql.lambda.user_balance':沒有名為'setuptools._distutils'的模塊

奇怪的是,拋出這個錯誤的函數沒有改變,其他函數也沒有任何問題。 沒有添加/刪除 python 模塊。

只是為了檢查代碼更改是否與此錯誤有關,我嘗試部署以前的版本。 但錯誤仍然存在。

我使用無服務器框架進行部署。

看起來這是一個從昨天開始發生在所有 Python 用戶的問題,因為設置工具已更新,但 PIP 沒有。

根據這個GitHub 問題,在實際修復之前有一個臨時解決方法。

設置環境變量 SETUPTOOLS_USE_DISTUTILS=stdlib 是一種解決方法,例如:

export SETUPTOOLS_USE_DISTUTILS=stdlib
pip3 install ....

我的假設是,您可以通過無服務器配置將其添加為 Lambda 的環境變量嗎?

這是 setuptools https://github.com/pypa/setuptools/issues/2353中的錯誤。 請遵循以下臨時解決方法。

Linux

export SETUPTOOLS_USE_DISTUTILS=stdlib

Windows

set SETUPTOOLS_USE_DISTUTILS=stdlib

之后,執行 pip 命令。

pip install XXXXX

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM