Python项目突发AttributeError: module '_distutils_hack' has no attribute 'ensure_shim'错误求助
解决AttributeError: module '_distutils_hack' has no attribute 'ensure_shim'错误
我之前也碰到过一模一样的问题,这大概率是distutils相关的包冲突或者版本不匹配搞出来的事儿,给你几个亲测有效的解决方法:
强制重装setuptools和distutils
直接在命令行运行这两条命令,强制覆盖现有版本,修复可能的文件损坏或版本兼容问题:pip install --upgrade --force-reinstall setuptools pip install --upgrade --force-reinstall distutils删除冲突的.pth文件
错误提示里提到的distutils-precedence.pth文件是罪魁祸首之一,找到这个文件的路径C:\Users\Admin\AppData\Local\Programs\Python\Python39\lib\site-packages\distutils-precedence.pth,直接删掉它,然后重启项目试试。这个文件本来是用来调整distutils加载优先级的,但有时候会和现有环境冲突。用虚拟环境隔离依赖
如果上面的方法都不管用,建议搞个干净的虚拟环境来运行你的项目,彻底避开全局环境的依赖混乱:python -m venv jarvis-env jarvis-env\Scripts\activate pip install -r requirements.txt
要是还不行,你可以试试指定setuptools的版本,Python3.9建议用59.x系列的版本,兼容性更好:
pip install setuptools==59.6.0
内容的提问来源于stack exchange,提问作者Hardik Trikha
相关产品推荐
相关产品推荐

