Flutter引入flutter_html库pub get失败及升级后Gradle报错解决方案问询
问题1:引入
flutter_html: ^2.1.5后执行pub get失败 错误根因
当前项目使用的Flutter SDK版本为1.27.0-2.0.pre.1,而flutter_html 2.1.0及以上版本要求Flutter SDK最低版本为2.2.0,版本约束冲突导致依赖版本求解失败。
解决方案
- 优先方案:升级Flutter SDK到2.2.0及以上版本
执行命令flutter upgrade,升级完成后重新执行flutter pub get即可。升级前可确认项目其他依赖是否兼容高版本Flutter SDK,避免出现额外的依赖冲突。 - 备选方案:降级flutter_html到兼容旧SDK的版本
如果暂时无法升级Flutter版本,可将pubspec.yaml中的flutter_html依赖调整为支持1.27.0版本的最终版本,修改为flutter_html: ^1.3.0后重新执行flutter pub get即可。
问题2:升级Flutter后Android构建失败,报CheckManifest注解错误
错误根因
升级Flutter后,项目中原有的Android Gradle插件版本与Gradle运行版本不匹配,高版本Gradle强化了配置校验规则,旧版Android构建插件使用@Input注解标记File类型属性不符合校验规则,导致构建失败。
解决方案
- 匹配Android Gradle插件与Gradle运行版本
打开项目根目录下的android/build.gradle文件,修改构建插件版本:dependencies { // 原版本如果低于4.1.0,升级到匹配版本,示例为4.2.0 classpath 'com.android.tools.build:gradle:4.2.0' } - 调整Gradle wrapper版本对应
打开android/gradle/wrapper/gradle-wrapper.properties文件,修改distributionUrl为对应匹配的Gradle版本,插件4.2.0对应Gradle 6.7.1:distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip - 清理缓存后重新构建
依次执行以下命令清理旧缓存:
重新执行构建命令即可正常编译。flutter clean flutter pub get
内容的提问来源于stack exchange,提问作者Rajasekaran M
相关产品推荐
相关产品推荐

