Flutter降级到2.2.3后出现Dart语言版本过高错误如何解决
问题原因
你当前使用的Dart 2.13.4最高支持的语言版本为2.13,报错涉及的shelf_proxy:1.0.1、http:0.13.4版本的最低语言版本要求高于2.13,且这些包属于devtools的依赖包,仅清理项目缓存无法清除全局pub缓存中不兼容的版本。
解决方案
- 第一步:在
pubspec.yaml中添加依赖覆盖配置,锁定冲突包到兼容Dart 2.13的版本:
dependency_overrides: http: 0.13.3 shelf_proxy: 1.0.0
- 第二步:清理全局pub缓存与项目本地依赖文件:
执行命令:flutter pub cache clean
手动删除项目根目录下的pubspec.lock文件,再执行flutter pub get重新拉取依赖。 - 第三步(可选):如果仍有devtools预编译报错,可关闭devtools预编译,不影响项目正常运行:
执行命令:flutter config --no-devtools - 第四步:执行
flutter clean后重新运行项目即可。
内容的提问来源于stack exchange,提问作者zeed
相关产品推荐
相关产品推荐

