Flutter TFLite项目编译报错:找不到compile()方法,求解决方案
解决Flutter tflite插件编译错误
错误原因
- 你使用的
tflite:1.1.2是旧版本插件,它的Android构建脚本中使用了Gradle已废弃的compile()依赖声明方法,当前项目的Gradle版本不再支持该方法,导致编译失败。
解决方法
方法一:升级tflite插件到最新兼容版本(推荐)
- 打开项目根目录的
pubspec.yaml文件,找到tflite依赖项,将版本替换为最新稳定版(如tflite: ^1.1.3,可参考pub.dev上的最新版本) - 执行命令:
flutter pub get,重新拉取适配新Gradle语法的插件版本 - 重新运行项目:
flutter run
方法二:临时修改缓存中的插件构建脚本(不推荐,缓存清理后失效)
- 定位到报错的构建文件:
C:\Users\NEXGEN\AppData\Local\Pub\Cache\hosted\pub.dev\tflite-1.1.2\android\build.gradle - 打开文件后找到第36行的代码:
compile 'org.tensorflow:tensorflow-lite:+' - 将
compile替换为implementation,修改后代码为:implementation 'org.tensorflow:tensorflow-lite:+' - 保存文件后重新运行
flutter run
方法三:锁定Gradle版本到兼容旧语法的版本(不推荐)
- 打开项目
android/gradle/wrapper/gradle-wrapper.properties文件,修改distributionUrl为旧版本Gradle:distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip - 同时打开
android/build.gradle文件,修改Gradle插件版本为匹配的旧版本:dependencies { classpath 'com.android.tools.build:gradle:4.2.2' } - 执行
flutter clean后重新运行项目
内容的提问来源于stack exchange,提问作者Syed Zohaib Hassan
相关产品推荐
相关产品推荐

