编译报错:Manifest merger failed with multiple errors
定位编译错误:java.lang.RuntimeException: Manifest merger failed with multiple errors
近日,项目中需要引入一个module。在成功导入后,添加依赖到主模块上,但是在编译过程中发生了一个错误:
java.lang.RuntimeException: Manifest merger failed with multiple errors
我们可以很明显的看到Manifest merger failed with multiple errors,这表明错误发生在AndroidManifest.xml文件中。至于其他有效信息我们就无法获取更多了。
我们知道发生这种错误,通常是因为子模块和主模块的manifest文件有冲突。
关键:找准错误信息,看错误信息中是否已经给出了解决方案。
在经过一番排查后我们发现是因为FileProvider的问题,在主module和子module的manifest中都声明了FileProvider,从而导致了这个错误。
要解决这个问题很容易,我们在子模块中创建一个xxFileProvider继承自FileProvider就可以了。
这样就顺利解决了这个问题。
当然对于发生这个错误Manifest merger failed with multiple errors的具体问题需要具体对待,但我们可以判断错误发生在manifest文件中。