迁移至AndroidX后出现“Failed to transform”错误求助
Firebase & Play Services Jetify Failures When Migrating to AndroidX
我之前也遇到过完全一样的问题!当时折腾了好一会儿才找到几个可行的解决办法,分享给你试试:
统一Firebase/Play Services依赖版本
Jetify转换失败很大概率是因为Firebase相关依赖版本不统一导致的。建议把所有com.google.firebase和com.google.android.gms开头的依赖都更新到同一兼容AndroidX的版本(比如16.0.0及以上):// 在app/build.gradle中调整依赖 implementation 'com.google.firebase:firebase-perf:16.0.0' implementation 'com.google.android.gms:play-services-measurement-base:16.0.0' // 其他Firebase/Play Services依赖也保持同版本同时,项目根目录的
build.gradle里要对应升级Google服务插件版本:classpath 'com.google.gms:google-services:4.2.0'彻底清理Gradle缓存并重启
缓存文件损坏是这类问题的常见诱因,手动清理缓存后再重启Studio:- 删除本地Gradle缓存目录:
/Users/jooreill/.gradle/caches - 打开Android Studio,执行
File -> Invalidate Caches / Restart,选择Invalidate and Restart - 重启完成后重新同步Gradle
- 删除本地Gradle缓存目录:
升级Android Gradle插件版本
Android Studio 3.2 Canary 14本身可能存在Jetify的已知bug,建议升级到更稳定的版本(比如3.2正式版或更高):// 根build.gradle中更新插件 classpath 'com.android.tools.build:gradle:3.2.1'记得同步更新Gradle wrapper版本(
gradle/wrapper/gradle-wrapper.properties):distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip临时添加Jetify黑名单(应急方案)
如果以上方法都无效,可以先把报错的AAR文件加入Jetify黑名单,跳过转换(不推荐长期使用,仅用于排查或临时解决):// 在gradle.properties中添加 android.jetifier.blacklist=firebase-perf-15.0.0.aar,play-services-measurement-base-15.0.2.aar
我当时是通过统一依赖版本+清理缓存解决的问题,你可以按顺序尝试这些方案。
内容的提问来源于stack exchange,提问作者John O'Reilly
相关产品推荐
相关产品推荐

