记一次打包debug

今天一位同事打包的时候发现,打指定渠道包时使用eclipse打包会报错Unable to execute dex: Multiple dex filesdefine
报错显示的信息是BuildConfig类出现重复,使用AS解开jar包发现确实有这个BuildConfig类,但是没有找到和它重复的类文件。查阅安卓资料发现打包时会自动生成BuildConfig类文件,然而由于引用的jar包中早已存在该文件就导致了上述报错。只需要把这个类文件删除就可以解决问题,但是这个类文件是从哪里冒出来的,再次查阅资料发现原来AS导出jar的时候由于种种原因,会连带一些杂质一起导出就是各种BuildConfig文件和R.class文件。
解决方案:在模块的gradle中指定需要打包的类,排除无用的类就可以了。只需要加入下面几行代码就可以剔除无用的类文件

from file('build/intermediates/classes/release')
archiveName = 'xxx.jar'
destinationDir = file('../libs/')
exclude "**/**/BuildConfig.class"
exclude "**/**/BuildConfig\$*.class"
exclude "**/R.class"
exclude "**/R\$*.class"
include "**/*.class"

完结撒花~~~~
感谢下面几位前辈勇于探索和无私奉献的精神
https://blog.csdn.net/lvxiangan/article/details/71601451
https://blog.csdn.net/edisonchang/article/details/51296265

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值