Jenkins构建Android项目时出现Failed to transform aar files问题
排查&解决步骤
清理Jenkins节点的Gradle缓存
本地构建正常说明依赖本身无问题,大概率是Jenkins服务器上的Gradle缓存损坏或下载不完整。找到Jenkins工作节点的~/.gradle/caches目录,删除整个caches文件夹后重新触发构建,让Gradle重新拉取所有依赖。对齐Jenkins与本地的构建环境
确保Jenkins使用的JDK、Android SDK、Gradle版本和本地Android Studio完全一致。比如本地用Gradle 7.4,Jenkins就别用7.0;JDK版本也要对应(Android项目通常用11或17)。优先使用项目内的gradlew脚本执行构建,避免在Jenkins中指定不匹配的Gradle版本。核对依赖仓库配置
对比本地build.gradle与Jenkins构建时的配置,确认所有依赖仓库(如mavenCentral、jitpack或私有仓库)均配置正确,且Jenkins服务器能正常访问这些仓库。私有仓库可能需要在Jenkins节点配置访问凭证,或在gradle.properties中填写仓库的账号密码。强制刷新依赖
在Jenkins的构建命令中添加--refresh-dependencies参数,比如执行./gradlew assembleRelease --refresh-dependencies,强制Gradle忽略缓存、重新拉取所有依赖包,规避缓存AAR文件损坏的问题。检查Jenkins工作目录权限
若Jenkins运行用户没有工作目录的读写权限,可能导致AAR文件解压或转换失败。检查Jenkins工作空间的文件夹权限,确保运行Jenkins的用户拥有完整的读写权限。获取详细错误日志
仅看表层报错不足以定位问题,可在构建命令中添加--debug或--info参数,比如./gradlew assembleRelease --debug,获取更详尽的错误信息,定位具体是哪个AAR出问题,或是转换流程中哪一步出错。
内容的提问来源于stack exchange,提问作者Yatin depolkar

