我的项目是一个使用Parse的聊天应用程序.添加其他依赖项后,此问题开始出现:
Error:Execution Failed for task ‘:app:dexDeBUG’.
com.android.IDe.common.process.ProcessException: org.gradle.process.internal.ExecException: Process ‘command ‘/usr/lib/jvm/java-7-oracle/bin/java” finished with non-zero exit value 2
在StackOverflow中搜索,一些人告诉我它可能是Android的65K限制.
所以,要解决我按照以下步骤:
1 – 添加MultIDex
DefaultConfig { multIDexEnabled true}
和
compile 'com.androID.support:multIDex:1.0.0'
https://developer.android.com/tools/building/multidex.html
2 – 在AndroID Gradle设置中启用Jumbo模式
dexOptions { jumboMode = true }
我清理了项目并运行了gradle构建.它没有产生任何错误.大!但是当我点击“运行应用”时,它会在下面生成此错误.
Error: Execution Failed for task ‘: app:
packageAllDeBUGClassesForMultIDex’. > Java.util.zip.ZipException:
duplicate entry: bolts / AggregateException.class
如果我删除依赖项’com.parse.bolts:bolts-androID:1.’“运行应用程序”有效,但我不能没有Parse的依赖.
这是我的Gradle构建脚本:
apply plugin: 'com.androID.application'androID { compileSdkVersion 22 buildToolsversion "22.0.1" defaultConfig { applicationID "br.com.triangulum.mink" minSdkVersion 18 targetSdkVersion 22 versionCode 1 versionname "1.0" multIDexEnabled true } buildTypes { release { MinifyEnabled false proguardfiles getDefaultProguardfile('proguard-androID.txt'), 'proguard-rules.pro' } } dexOptions { jumboMode = true }}repositorIEs { mavenCentral()}dependencIEs { compile 'com.parse.bolts:bolts-androID:1.+' compile('com.androID.support:multIDex:1.0.0') { exclude group: 'com.parse.bolts', module: 'bolts-androID' } androIDTestCompile 'com.androID.support:multIDex-instrumentation:1.0.0' compile filetree(dir: 'libs', include: ['*.jar']) compile filetree(dir: 'libs', include: 'Parse*.jar') compile project('librarIEs:httprequest') compile project('librarIEs:cameralibrary') compile project('librarIEs:bgarefreshlayout') compile 'com.androID.support:appcompat-v7:+' compile 'com.androID.support:recyclervIEw-v7:+' compile 'com.androID.support:cardvIEw-v7:+' compile 'com.androID.support:palette-v7:+' compile 'com.androID.support:design:+' compile 'com.daimajia.swipelayout:library:1.2.0@aar' compile 'com.Google.androID.gms:play-services:6.5.87' compile 'com.Google.code.gson:gson:2.2.+' compile 'com.squareup.picasso:picasso:2.4.0' compile 'com.jakewharton:butterknife:7.0.1' compile 'com.afollestad:material-dialogs:0.7.4.0' compile 'com.getbase:floatingactionbutton:1.10.0' compile 'com.facebook.androID:facebook-android-sdk:4.1.0' compile 'de.greenrobot:eventbus:2.4.+' compile'com.edmodo:cropper:1.0.+' compile 'com.github.ksoichiro:androID-observablescrollvIEw:+' compile 'com.etsy.androID.grID:library:1.0.5' compile('com.mikepenz:actionitembadge:3.0.2@aar') { transitive = true } compile 'com.daimajia.swipelayout:library:1.2.0@aar' compile 'com.androID.support:multIDex:1.0.+'}
解决方法:
试着改变这个:
compile('com.androID.support:multIDex:1.0.0') { exclude group: 'com.parse.bolts', module: 'bolts-androID' }
对此:
compile('com.androID.support:multIDex:1.0.0');
有时使用bolds模块来修复Duplicated dexlibs
问候
总结以上是内存溢出为你收集整理的android – 使用Parse和Multidex重复输入全部内容,希望文章能够帮你解决android – 使用Parse和Multidex重复输入所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)