Android 编译报错 Null extracted folder for artifact: xxx activity:1.8.0

报错具体如下

Null extracted folder for artifact:

ResolvedArtifact(componentIdentifier=androidx.activity:activity:1.8.0,

variantName=null,

artifactFile=C:\Users\Administrator.gradle\caches\modules-2\files-2.1\androidx.activity\activity\1.8.0\4266e2118d565daa20212d1726e11f41e1a4d0ca\activity-1.8.0.aar,

extractedFolder=null, dependencyType=ANDROID, isWrappedModule=false,

buildMapping={current_build =xxxxxx(项目地址)},

mavenCoordinatesCache=com.android.build.gradle.internal.ide.dependencies.MavenCoordinatesCacheBuildService$Inject@35910245)

描述与尝试

这种报错大多是依赖、缓存等问题导致的

网上解决方案较多,常见的包括注释掉activity:1.8.0依赖、升级sdk/java版本、clean缓存等等,但我的项目本身没有显式引入activity:1.8.0,且其他方法尝试基本都没有效果。

猜测是某个依赖引用了androidx.activity:activity:1.8.0,因此开始查看依赖树。

解决方案

在项目根目录下

css 复制代码
./gradlew app:dependencies --configuration debugRuntimeClasspath

此处 app为module名称

依赖树中可看到

css 复制代码
+--- androidx.appcompat:appcompat:1.3.1 -> 1.7.1
|    +--- androidx.activity:activity:1.8.0  
//省略部分依赖

appcompat:1.3.1 被升级到了 appcompat:1.7.1,并引入了activity1.8.0,查找app下build.gradle中dependdencis是否引入了 appcompat:1.7.1。

若项目本身就有其他依赖已经引入了appcompact,将依赖内容注释掉或删掉即可;若项目本身没有引入太多第三方依赖,注释后缺失依赖,可尝试将其降低至1.4.2等版本

css 复制代码
dependencies {
implementation 'androidx.appcompat:appcompat:1.7.1'
}
相关推荐
执明wa11 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
404_coder12 小时前
源码视角下的 Android 开机流程:从 Zygote、SystemServer 到 Launcher
android
二流小码农12 小时前
鸿蒙开发:以登录案例了解代码架构MVVM
android·ios·harmonyos
用户693717500138413 小时前
从代码生产者到 AI 协作者:软件工程师的角色重构
android·前端·后端
GitLqr13 小时前
别在 Flutter 的 main() 里乱锁屏幕方向,小心 iPad 分屏功能被你搞没了
android·flutter·ios
sg_knight13 小时前
MySQL 存储过程详解:从入门到实战
android·数据库·mysql·database·dba·关系型数据库·db
爱笑鱼13 小时前
Binder(四):ioctl(BINDER_WRITE_READ) 之后,事务怎样到达目标进程?
android
AFinalStone13 小时前
Android 7系统休眠唤醒(二)开机全链路—BootROM到Launcher
android·电源管理·休眠唤醒
Mr YiRan14 小时前
Android NDK开发之统计到未被回收的图片
android