执行brownie compile报错NoneType无get属性是什么原因?
Brownie编译报错
AttributeError: 'NoneType' object has no attribute 'get'常见诱因 该报错核心逻辑是Brownie加载项目配置时返回了空值,无法调用get方法读取配置字段,常见诱因如下:
- 执行命令的工作目录错误:运行
brownie compile时未处于项目根目录,Brownie无法找到brownie-config.yaml文件导致配置加载失败。需确认当前目录下存在对应配置文件后再执行编译。 - 配置文件命名不符合要求:配置文件必须命名为
brownie-config.yaml,若错误命名为brownie_config.yaml、brownie-config.yml(部分旧版本Brownie不识别.yml后缀)或存在拼写错误,都会导致配置加载返回空。 - YAML配置存在语法错误:YAML对缩进、字符格式要求严格,若配置存在缩进不统一、使用中文标点、包含不可见特殊字符等问题,会导致解析失败。可核对你的配置缩进是否统一为2个空格,没有非法输入。
- Brownie版本不兼容:你当前使用的Brownie版本与配置的格式规则不匹配,比如过旧的版本不支持你配置中的依赖声明、重映射等字段写法,导致解析失败。可尝试切换到v1.19.3等常用稳定版Brownie重试。
- 项目未完成初始化:如果是新建项目未执行过
brownie init生成标准项目结构,直接手动创建配置文件也可能触发配置加载异常。
内容的提问来源于stack exchange,提问作者Ramiro Rothsche
相关产品推荐
相关产品推荐

