当我将新库添加到gradle中时,我一直收到以下错误:
错误:任务':app:transformClassesWithDexForDebug'执行失败。 com.android.build.transform.api.TransformException:com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令' C:\ Program Files \的Java \ jdk1.7.0_51 \斌\ java.exe的''完成非零退出值2
这是我的傻瓜:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion '23.0.1'
useLibrary 'org.apache.http.legacy'
defaultConfig {
applicationId "ir.whc.news"
minSdkVersion 14
targetSdkVersion 23
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
}
}
dependencies {
testCompile 'junit:junit:4.12'
compile project(":volley")
compile project(":AndroidBootstrap")
compile 'com.android.support:recyclerview-v7:23.1.0'
compile 'com.android.support:support-annotations:23.1.0'
compile 'com.android.support:appcompat-v7:23.1.0'
compile 'com.android.support:design:23.1.0'
compile 'com.shamanland:fonticon:0.1.9'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'com.weiwangcn.betterspinner:library-material:1.1.0'
compile 'com.joanzapata.pdfview:android-pdfview:1.0.4@aar'
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.android.support:support-v4:23.1.0'
compile 'com.github.satyan:sugar:1.4'
provided 'org.apache.commons:commons-collections4:4.0'
}
apply plugin: 'com.google.gms.google-services'
在this SO question的公认答案中,有人写道冲突是导致此错误的原因。我不知道我gradle
依赖项中的冲突是什么?
答案 0 :(得分:1)
我建议不要将其整体编译为原样,大多数情况下这会导致超过65K的方法dex限制。
compile 'com.google.android.gms:play-services:8.3.0'
see here,找出您真正需要的具体内容并根据具体目的的需要使用它们,似乎您也忘记添加multiDexEnabled true
。
答案 1 :(得分:0)
在defaultConfig
:
multiDexEnabled true
像这样:
defaultConfig {
applicationId "ir.whc.news"
minSdkVersion 14
targetSdkVersion 23
multiDexEnabled true
}
有关详细信息,请参阅Building Apps with Over 64K Methods
请参阅此Java finished with non-zero exit value 2 - Android Gradle
希望它对你有所帮助。