':app:transformClassesWithDexForDebug'.finished with non-zero exit value 2

本来想以下面的作为标题,但为了让跟多的人能检索到,就直接从错误里面提取 关键字了

android谨慎使用net包的json

错误产生背景:
–1 我使用了net.sf.json
–2 我在该项目里面使用了module(除app以外的)
感谢stackoverflow 以后要养成搜索后优先点击来自stackoverflow的答案
因为服务器就是导入的net.sf.json,所以就在android工程里面导入了这个包,可当真机模拟的时候就报这个错误

Error:Execution failed for task ‘:app:transformClassesWithDexForDebug’.
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ‘command ‘D:\jdk\bin\java.exe” finished with non-zero exit value 2

于是在stackoverflow的提示下在build.gradle里面defaultConfig属性加上multiDexEnabled true,大概意思 就是说有多个dex,需要enable下多dex支持

继续报错

Error:Execution failed for task ‘:app:transformClassesWithJarMergingForDebug’.
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: net/sf/json/AbstractJSON$1.class

然后要更新sdk,打开sdk manager发现也不需要啊
最终无奈还是换org的json吧,何况还是android自带的
于是又报错:

Error:Execution failed for task ‘:app:transformClassesWithMultidexlistForDebug’.
java.io.IOException: Can’t read [D:\sdk\build-tools\21.0.1\multidex\shrinkedAndroid.jar] (No such file or directory)

这次比较简单,直接把上面说的multiDexEnabled true移除就好了

感慨下,android平台有的还是用android平台的吧,也许google工程师太忙了,没工夫满足你所有要求。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值