Flutter Android端Gradle构建失败:找不到com.otaliastudios:transcoder:0.9.1
Flutter video_compress 3.1.2 Android构建失败:无法解析com.otaliastudios:transcoder:0.9.1依赖
问题描述
我在Flutter项目中使用video_compress: 3.1.2依赖,iOS模拟器可正常运行,但Android模拟器启动应用时遭遇Gradle构建失败,提示无法解析com.otaliastudios:transcoder:0.9.1依赖(该依赖由video_compress间接引入)。已尝试在app/build.gradle的dependencies块手动添加implementation("com.otaliastudios:transcoder:0.9.1"),但问题仍未解决。
错误日志
FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':app:mergeDebugAssets'. > Could not resolve all files for configuration ':app:debugRuntimeClasspath'. > Could not find com.otaliastudios:transcoder:0.9.1. Searched in the following locations: - https://dl.google.com/dl/android/maven2/com/otaliastudios/transcoder/0.9.1/transcoder-0.9.1.pom - https://repo.maven.apache.org/maven2/com/otaliastudios/transcoder/0.9.1/transcoder-0.9.1.pom - https://storage.googleapis.com/download.flutter.io/com/otaliastudios/transcoder/0.9.1/transcoder-0.9.1.pom Required by: project :app > project :video_compress * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUİLD FAILED in 20s Exception: Gradle task assembleDebug failed with exit code 1 Exited
已尝试的无效操作
在app/build.gradle的dependencies块添加依赖:
dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation platform('com.google.firebase:firebase-bom:31.0.2') implementation("com.otaliastudios:transcoder:0.9.1") // 手动添加的依赖 }
解决方案
- 添加JitPack仓库:
com.otaliastudios:transcoder托管在JitPack,默认Gradle配置未包含该仓库。修改项目根目录下的build.gradle(注意不是app模块下的),在allprojects/repositories中加入JitPack:
allprojects { repositories { google() mavenCentral() maven { url 'https://jitpack.io' } // 新增这一行 } }
- 清理Gradle缓存:缓存可能导致依赖解析异常,执行以下命令彻底清理:
flutter clean flutter pub get cd android && ./gradlew clean build --refresh-dependencies
- 强制指定依赖版本:如果上述步骤无效,可在
app/build.gradle中添加强制依赖策略,确保Gradle拉取指定版本:
configurations.all { resolutionStrategy.force 'com.otaliastudios:transcoder:0.9.1' }
内容的提问来源于stack exchange,提问作者Mustafa
相关产品推荐
相关产品推荐

