1.将公有改为私有,将出现问题的jar包文件修改为私有属性,使其不出现混淆引用问题
dependencies {
provided files('libs/ormlite-android-4.42.jar')
provided files('libs/ormlite-core-4.42.jar')
provided files('libs/fastjson-1.1.24.jar')
compile files('libs/lite-http-2.3.1.jar')
provided files('libs/commons-lang-2.6.jar')
provided files('libs/BaiduLBS_Android.jar')
compile files('libs/Msc.jar')
provided files('libs/android-support-v4.jar')
compile files('libs/httpcore-4.3.2.jar')
compile files('libs/httpmime-4.3.5.jar')
}
File 1: /home/bluelife/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpmime/4.3.1/f7899276dddd01d8a42ecfe27e7031fcf9824422/httpmime-4.3.5.jar
File 2: /home/bluelife/.gradle/caches/modules-2/files-2.1/org.apache.httpcomponents/httpmime/4.3.1/f7899276dddd01d8a42ecfe27e7031fcf9824422/httpmime-4.3.5.jar
需要在build.gradle文件里添加如下配置:
在build.gradle中的Android节点里边添加
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/ASL2.0'
exclude 'META-INF/notice.txt'
}
有的时候删除文件,重新导入或者编译一遍也可能会修复问题,具体原因未知…