做android程序,在gradle文件中免不了引入第三方的库,添加库之后,同步gradle,碰到Manifest merger failed with multiple errors问题,也不是什么稀罕事,但是一堆的编译过程提示的错误,看着头就大,无从下手。
比如在某次编译时,出现如下错误。
然后在Build Output面板中,看到的是如下任务出现错误:
接下来我们看看如果通过查看日志,查找问题原因。
命令 ./gradlew
如果使用出现Permission denied错误,就先使用chmod +x gradlew命令获取权限。
我们通过上面的图看到是processAliDebugManifest任务出错,所以我们要看看这个任务的堆栈信息。
命令 ./gradlew processAliDebugManifest --stacktrace
执行后,就会出现一大堆的英文,里面包含Warning和Error,我们只看Error。
就好像我们看logcat日志一样,通过这个信息,不难发现问题所在,我这里就是重复定义了WAKE_LOCK权限,还有版本低的问题。