错误记录:Error while merging dex archives(Program type already present )

引入了新的jar包和代码,再build时就报出了这个错误,查了一些资料解决了问题。

这个是stackoverflow上关于这个问题的讨论,也许会有参考效果:

https://stackoverflow.com/questions/46267621/unable-to-merge-dex

--------------------------------------------------------------------------------------------------------------

引起这个错误的原因可能有多种,我这种情况是“Program type already present”,程序类型已经存在。

从根本上说这是由于引入依赖时多次加载同一个类而引发的。

那么解决问题的关键就是找出所有冲突类的引入点,然后删去一些,只留一个,也就是只引入一次,这样就不会冲突了。

注意引入依赖包的地方可以是在build.gradle文件中通过compile(androidstuio3.0后是api或implementation)引入,

也可能会是在代码中通过System.loadLlibrary加载依赖包,我就是这样加载一个jar包两次才出现错误的。

----------------------------------------------------------------------------------------------------------------

记录下来作为经验,如果能帮到别人就更好了。如果有错还请费力指正。

你可能感兴趣的:(android)