升级Flutter及shared_preferences 2.2.2后报错:目标包不存在
以下是针对你遇到的Gradle编译报错(找不到io.flutter.plugins.sharedpreferences包)的可行解决方案:
清理缓存并重新拉取依赖
- 执行
flutter clean清除Flutter项目缓存 - 进入项目的
android目录,执行./gradlew clean(Windows系统用gradlew clean)清除Gradle缓存 - 返回项目根目录,执行
flutter pub get重新下载依赖
- 执行
重新生成插件注册文件
- 删除
android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java文件 - 执行
flutter pub get,让Flutter自动重新生成该注册文件 - 检查新生成的文件中是否正确引入了shared_preferences的包路径,确认无拼写或路径错误
- 删除
降级shared_preferences版本
若缓存清理无效,可暂时在pubspec.yaml中指定兼容版本,比如:dependencies: shared_preferences: ^2.2.1执行
flutter pub get后重新编译项目切换到Flutter稳定通道
Dev通道属于开发预览版,兼容性不如稳定版,执行以下命令切换:flutter channel stable flutter upgrade重新拉取依赖后尝试编译
问题原因
Flutter Dev通道3.4.0-64.0.dev与shared_preferences 2.2.2的Android端插件存在适配差异,导致自动生成的插件注册文件无法找到对应包路径,引发Gradle编译失败。
内容的提问来源于stack exchange,提问作者Alaa Edden Zarzor
相关产品推荐
相关产品推荐

