解决Android Studio加载第三方jar包,出现包重复加载的问题

今天在工作中碰到了一个加载fresco这个框架,碰到了suport包重复引用的问题,一是本身应用上需要应用,但是fresco中又包含有该报,导致在果然掉了在编译的时候出现错误:

Execution failed for task ':app:dexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
	F:\zsl\sdk\build-tools\21.1.2\dx.bat --dex --output F:\zsl\Android\pro\RecipesDaquan\app\build\intermediates\dex\debug --input-list=F:\zsl\Android\pro\RecipesDaquan\app\build\intermediates\tmp\dex\debug\inputList.txt
Error Code:
	2
Output:
	UNEXPECTED TOP-LEVEL EXCEPTION:
	com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompatIcs;
		at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
		at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554)
		at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535)
		at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171)
		at com.android.dx.merge.DexMerger.merge(DexMerger.java:189)
		at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454)
		at com.android.dx.command.dexer.Main.runMonoDex(Main.java:303)
		at com.android.dx.command.dexer.Main.run(Main.java:246)
		at com.android.dx.command.dexer.Main.main(Main.java:215)
		at com.android.dx.command.Main.main(Main.java:106)
解决的方法就是
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:21.0.0' compile 'in.srain.cube:cube-sdk:1.0.42.1' compile files('libs/android-async-http-1.4.6.jar') }其中引入了v7的包后会自动去加载编译一个v4:21.0.0包,而在in.srain.cube:cube-sdk:1.0.42.1库中也有一个v4的包,所以我们需要去掉一个
改成
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:21.0.0'
    compile ('in.srain.cube:cube-sdk:1.0.42.1'){
        exclude module: 'support-v4'
    }
    compile files('libs/android-async-http-1.4.6.jar')
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值