Android Studio构建旧项目遇同名库警告及依赖拉取失败求助
旧Android项目Gradle同步问题:同名包警告+依赖拉取失败解决方案
问题说明
同步Gradle时出现以下警告,且无法从Maven/Jcenter仓库拉取依赖,已排查JDK、SDK、NDK、Gradle及插件版本,问题未解决:
WARNING [Project: :app] Support for libraries with same package name is deprecated and will be removed in a future release. WARNING [Project: :libraries_res:chrome_res] Support for libraries with same package name is deprecated and will be removed in a future release. WARNING [Project: :libraries_res:ui_res] Support for libraries with same package name is deprecated and will be removed in a future release. WARNING [Project: :libraries_res:content_res] Support for libraries with same package name is deprecated and will be removed in a future release. Incremental java compilation is an incubating feature. CONFIGURE SUCCESSFUL Total time: 2.086 secs
分步解决方案
1. 解决同名包废弃警告(可能影响依赖解析)
- 检查所有Module的
AndroidManifest.xml,确保每个Module的package属性唯一,禁止与其他Module重复 - Library Module优先在
build.gradle中使用applicationId指定包名,避免与主App或其他Library冲突 - 执行命令清理项目缓存:
./gradlew clean,之后重新同步项目
2. 修复依赖拉取失败问题
- 替换废弃仓库:Jcenter已停止维护,将项目根目录
build.gradle中的仓库配置替换为:repositories { mavenCentral() // 可选添加阿里云镜像加速下载 maven { url 'https://maven.aliyun.com/repository/public' } maven { url 'https://maven.aliyun.com/repository/jcenter' } } - 验证依赖坐标:确认所有依赖的groupId、artifactId、版本号有效,部分旧依赖已迁移至Maven Central,需更新对应坐标
- 强制刷新缓存:点击Android Studio菜单栏
File -> Invalidate Caches...,勾选Invalidate and Restart,重启后重新同步 - 关闭离线模式:取消右上角大象图标中的
Offline Work勾选,确保允许在线拉取依赖
3. 适配Gradle版本(针对旧项目兼容)
- 匹配Gradle插件与Gradle版本:若项目使用过旧版本,尝试降级至稳定兼容组合,例如插件用
com.android.tools.build:gradle:3.5.4,Gradle版本用5.4.1(需根据项目实际情况调整) - 检查
gradle.properties配置:确保无禁用依赖下载的参数,例如将org.gradle.daemon=false改为true提升同步效率
内容的提问来源于stack exchange,提问作者Jamishon
相关产品推荐
相关产品推荐

