Gradle无法解析libs文件夹中的本地.aar依赖,求解决方案
解决Gradle无法解析本地AAR依赖的问题
检查基础配置
文件名与路径完全匹配:
确认项目根目录的libs文件夹下,确实存在FacePassAndroidSDK-McvSafe-release.aar和mcvSafe.v1.2.2.aar文件,注意大小写、特殊字符、后缀名必须完全一致(Gradle在Linux/macOS环境下大小写敏感)。
如果你的AAR文件放在app/libs目录下,需要修改settings.gradle里的flatDir路径:flatDir { dirs 'app/libs' }修正依赖声明写法:
保持settings.gradle的配置不变,将app模块的依赖声明调整为更明确的格式(避免Gradle解析歧义):dependencies { implementation fileTree(dir: 'libs', include: ['*.jar', '*.aar']) implementation(name: 'FacePassAndroidSDK-McvSafe-release', ext: 'aar') implementation(name: 'mcvSafe.v1.2.2', ext: 'aar') }
清理缓存并重新同步
- 执行Gradle清理命令:
# macOS/Linux ./gradlew clean # Windows gradlew clean - 点击Android Studio顶部的「Sync Project with Gradle Files」按钮,重新同步项目。
- 若仍有问题,删除项目根目录下的
.gradle/caches文件夹,再重新同步。
替代方案:直接引用文件路径
如果flatDir配置始终不生效,可直接通过文件路径引用AAR,绕开仓库配置:
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation files('libs/FacePassAndroidSDK-McvSafe-release.aar') implementation files('libs/mcvSafe.v1.2.2.aar') }
额外注意事项
如果这两个AAR依赖了其他第三方库,需要手动在dependencies块中添加这些依赖(本地AAR不会自动传递依赖)。
内容的提问来源于stack exchange,提问作者joe
相关产品推荐
相关产品推荐

