jar冲突 - app:transformDexArchiveWithExternalLibsDexMergerForDebug
再引入多种第三方框架时候。很容易报这个异常:app:transformDexArchiveWithExternalLibsDexMergerForDebug 如下图:
归结原因就是 重复的jar包或者资源导致的。
下面说一下解决办法。
方法一:如果知道是哪个jar ,直接删除
方法二:在app的build.gradle文件中的 defaultConfig添加:
defaultConfig {
~
multiDexEnabled true
~
}
这样的设置只能解决一部分的问题,而更加难受的情况是在项目中引入了很多的第三方库,这个时候鬼知道哪个库出了问题,那就只能去通过log找出来。
方法三:找出重复的jar,手动删除
我们正常编译app,这个时候会报异常。
我们查看Gradle console ,点击Run with --stacktrace 如下图:
这样就可以查看到是哪个jar包冲突了。
我这个是因为 集成qq登录。支付宝支付时候。都引进了 UTDevice导致的(由于项目比较早了,更新新的jar包,其中一个集成没有UTDevice的即可)