切换Flutter渠道到beta后报SystemMouseCursor未找到错误如何解决
问题解决方法
错误原因
SystemMouseCursor 是Flutter 2.5及以上版本才正式纳入框架的光标类,切换Flutter渠道后出现该报错,通常是项目缓存损坏、SDK版本约束不匹配、第三方依赖未适配当前SDK版本三类原因导致。
修复步骤
- 步骤1:清理项目缓存并重建依赖
关闭Android Studio后,在项目根目录依次执行以下命令:
完成后重新打开项目看是否恢复正常。flutter clean flutter pub get - 步骤2:核对Flutter SDK版本约束
打开项目根目录的pubspec.yaml文件,调整environment节点的版本下限和你当前使用的Flutter版本匹配,示例适配3.0+版本的配置如下:
修改后重新执行environment: sdk: '>=2.17.0 <3.0.0' flutter: '>=3.0.0'flutter pub get即可。 - 步骤3:升级未适配的第三方依赖
如果前两步操作后仍报错,查看报错日志指向的依赖包,将对应依赖升级到适配当前Flutter版本的最新版即可。 - 步骤4:重置Flutter SDK缓存
如果以上操作都无效,在本地Flutter SDK的安装目录执行以下命令重置SDK资源:flutter doctor flutter precache
备选方案(需要保留旧版本运行)
如果不需要使用beta渠道的Web开发特性,你可以将Flutter切换回之前的稳定版渠道,执行flutter downgrade <对应版本号>回退后重新构建项目即可。
内容的提问来源于stack exchange,提问作者Sheikh Raj
相关产品推荐
相关产品推荐

