执行brownie compile命令编译时报404错误无法从Github获取包版本
报错核心原因
该错误是Brownie执行编译时自动拉取项目依赖的环节出错,尝试访问GitHub上的依赖包资源时得到404响应,资源不存在。常见触发情况有三类:
- 项目
brownie-config.yaml配置文件中dependencies字段填写错误,比如仓库作者名、仓库名、版本号拼写有误,和GitHub上的实际资源不匹配 - 你引用的第三方依赖包对应的GitHub仓库已经被删除、改名或者设置为私有,无法公开访问
- 使用的Brownie版本过旧,部分内置默认依赖的官方仓库地址已经发生迁移,旧路径已经失效
修复方案
- 优先核对
brownie-config.yaml的依赖配置,确认每一条依赖的格式为作者名/仓库名@版本号,所有字符和GitHub上的公开仓库完全一致 - 如果确认依赖地址正确但依然拉取失败,可以手动将依赖包下载到项目的
contracts/packages目录下,修改配置将依赖的远程引用改为本地路径,跳过远程拉取步骤 - 未手动配置过任何依赖的情况下,通常是Brownie版本过旧导致的内置依赖地址失效,直接升级到最新稳定版即可解决,升级命令为:
pip install --upgrade eth-brownie
- 临时调试可以执行
brownie compile --no-deps跳过依赖拉取环节,先验证本地合约代码是否可以正常编译
内容的提问来源于stack exchange,提问作者jjreedv
相关产品推荐
相关产品推荐

