Flutter运行报错:无法解析org.tensorflow:tensorflow-lite:+依赖
问题详情
报错信息:
任务':app:checkDebugAarMetadata'执行失败。
无法解析配置':app:debugRuntimeClasspath'的所有文件。
无法解析org.tensorflow:tensorflow-lite:+。
被以下项目依赖:
project :app > project :flutter_tflite
无法列出org.tensorflow:tensorflow-lite的版本。
无法从https://jcenter.bintray.com/org/tensorflow/tensorflow-lite/maven-metadata.xml加载Maven元数据。
无法HEAD 'https://jcenter.bintray.com/org/tensorflow/tensorflow-lite/maven-metadata.xml'。
读取超时
当前buildscript配置:
buildscript { ext.kotlin_version = '1.6.10' repositories { google() mavenCentral() } allprojects { repositories { google() mavenCentral() }
解决方案
指定固定版本的tensorflow-lite依赖
flutter_tflite使用org.tensorflow:tensorflow-lite:+通配符拉取最新版本,但JCenter已停止服务导致元数据加载失败。直接在android/app/build.gradle的dependencies块中添加固定版本依赖,覆盖传递依赖:dependencies { // 保留原有依赖,新增以下行 implementation 'org.tensorflow:tensorflow-lite:2.14.0' // 选择稳定版本即可 }优化仓库配置
确保项目仓库中无废弃的jcenter(),同时补充必要的镜像仓库,修改android/build.gradle:allprojects { repositories { google() mavenCentral() maven { url "https://maven.google.com" } // 确保tensorflow包可被检索 // 若网络不佳,可添加国内镜像 // maven { url 'https://maven.aliyun.com/repository/google' } // maven { url 'https://maven.aliyun.com/repository/public' } } }清理缓存后重新构建
依次执行以下命令:flutter clean cd android && ./gradlew clean flutter run
内容的提问来源于stack exchange,提问作者user15141168

