Flutter应用编译报错:'kethrow'非类型等问题求解决方案
Flutter编译错误解决方法
核心报错分析
你遇到的错误来自http包0.13.5版本的代码问题:
- 语法拼写错误:
kethrow应为throw,导致编译语法报错 - 空安全兼容问题:
send方法返回类型要求非空,但原代码未满足当前Dart空安全规则
解决步骤
方法1:清理缓存并重装依赖(推荐)
- 执行命令清理项目缓存:
flutter clean - 删除项目根目录下的
pubspec.lock文件 - 重新拉取依赖:
flutter pub get
方法2:升级http包到兼容版本
- 打开项目的
pubspec.yaml文件,将http依赖版本更新为稳定兼容版,例如:dependencies: http: ^0.13.6 # 或更高的稳定版本 - 执行
flutter pub get完成更新
方法3:临时手动修复缓存文件(不推荐,仅应急)
- 找到报错文件:
C:/flutter/.pub-cache/hosted/pub.dartlang.org/http-0.13.5/lib/src/io_client.dart - 编辑文件:
- 将第88行的
kethrow修改为throw - 确保第48行的
send方法返回非空的IOStreamedResponse实例(可参考更高版本的http包实现)
- 将第88行的
内容的提问来源于stack exchange,提问作者Jeevan Shrestha
相关产品推荐
相关产品推荐

