执行flutter pub get后get包出现scrollBehavior命名参数不存在的错误
报错原因
- 版本不兼容是核心诱因:
scrollBehavior是Flutter SDK 2.5.0版本才新增到MaterialApp组件的命名参数,你当前项目依赖的get:4.3.8版本适配了高版本Flutter,会主动给MaterialApp传递该参数,但你本地安装的Flutter SDK版本低于2.5.0,编译时找不到对应参数就触发了该报错。 - 部分场景下是依赖传递冲突导致:项目中其他依赖包间接拉取了和你本地Flutter版本不匹配的
get包版本,也会出现该问题。
修复方案
- 方案1:升级Flutter SDK(优先推荐)
执行升级命令将本地Flutter SDK升级至2.5.0及以上版本即可兼容:
升级完成后重新执行flutter upgradeflutter pub get就能正常编译。 - 方案2:降级
get包适配当前环境
如果你暂时不方便升级Flutter SDK,可以手动将pubspec.yaml中的get依赖版本降至4.1.4及以下(该区间版本不会传递scrollBehavior参数):
修改完成后执行dependencies: get: 4.1.4flutter pub get拉取对应版本依赖即可。 - 方案3:临时修改源码应急
仅适合临时调试使用,不建议长期采用:找到报错提示的get_material_app.dart文件,删除第340行的scrollBehavior: scrollBehavior,参数即可正常编译,缺点是后续重新执行flutter pub get后修改会被覆盖。
内容的提问来源于stack exchange,提问作者Soton Ahmed
相关产品推荐
相关产品推荐

