升级Gradle 4.4后出现找不到manifest-merger.jar(26.1.2)的错误求助
解决Gradle 4.4升级后找不到manifest-merger.jar的问题
嘿,我来帮你搞定这个编译报错!这个问题其实挺典型的,主要是两个核心原因:要么是你的Android Gradle插件版本和Gradle 4.4的兼容没匹配好,要么就是项目的仓库配置里缺了Google的Maven仓库——毕竟jcenter现在已经不再同步所有Android构建工具的依赖了。
第一步:补全仓库配置
打开项目根目录下的build.gradle文件,把google()仓库加到repositories块里,而且最好放在jcenter前面,这样Gradle会优先从Google仓库找依赖:
buildscript { repositories { google() jcenter() } dependencies { // Gradle 4.4对应的Android Gradle插件推荐版本是3.1.2,正好对应你报错里的26.1.2构建工具 classpath 'com.android.tools.build:gradle:3.1.2' } } allprojects { repositories { google() jcenter() } }
第二步:确认Gradle wrapper配置无误
你已经把gradle-wrapper.properties设置成Gradle 4.4了,这部分是对的,不用修改:
distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip
为什么这能解决问题?
从Android Gradle插件3.0.0版本开始,Google把大部分Android构建工具的依赖(包括你找不到的manifest-merger.jar)都迁移到了自己的Maven仓库,jcenter不再同步这些包。所以只依赖jcenter的话,自然找不到这个jar包。
改完之后,点击Android Studio右上角的"Sync Project with Gradle Files"按钮,重新同步项目,应该就能顺利编译了!
内容的提问来源于stack exchange,提问作者Jérmy Reynaud
相关产品推荐
相关产品推荐

