使用poetry安装pycparser==2.20提示文件不存在错误如何解决?
问题核心原因
该报错是poetry本地缓存的pycparser 2.20安装包下载不完整/被系统安全软件删除,导致读取时找不到对应文件,和依赖版本兼容性无关,不需要调整poetry或pycparser版本即可解决。
可行解决步骤
- 第一步:清除poetry的pypi全局缓存,执行命令:
poetry cache clear --all pypi,执行时输入y确认清除所有缓存内容,清除后重新执行poetry update --lock尝试更新lock文件。 - 第二步:如果清缓存后仍报错,删除项目根目录下的
poetry.lock文件,再重新执行poetry install,poetry会自动重新拉取所有匹配版本的依赖包,不会改动原有依赖的版本号。 - 第三步:排查Windows安全软件拦截情况:打开Windows Defender的威胁防护历史,查看是否有对应pycparser安装包的隔离记录,若存在则将该文件恢复,同时将poetry的缓存目录
C:\Users\你的用户名\AppData\Local\pypoetry\Cache加入杀毒软件白名单,避免后续再出现类似误删情况。 - 第四步:上述操作都无效的话,可在项目的
pyproject.toml配置中强制指定pycparser的拉取来源,在依赖配置段添加:
保存后重新执行pycparser = {version = "2.20", source = "pypi"}poetry install即可。
内容的提问来源于stack exchange,提问作者Boris
相关产品推荐
相关产品推荐

