我在官方 facebook 开发者网站上遵循了本指南:
当我尝试构建第一个示例应用程序时,我遇到了错误:
Gradle: Error while executing dx command
Gradle: UNEXPECTED TOP-LEVEL EXCEPTION:
Gradle: java.lang.IllegalArgumentException: already added: Landroid/support/v4/widget/CursorAdapter$1;
Gradle: at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)
Gradle: at com.android.dx.dex.file.DexFile.add(DexFile.java:163)
Gradle: at com.android.dx.command.dexer.Main.processClass(Main.java:490)
Gradle: at com.android.dx.command.dexer.Main.processFileBytes(Main.java:459)
...
Gradle: 1 error; aborting
Gradle: Execution failed for task ':abcd:dexDebug'.
我认为它的发生是因为 facebook sdk 中包含 android-support-v4,而我的项目也想包含它,我试图删除它 - 但它没有帮助。
我的项目的构建等级:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.5.+'
}
}
apply plugin: 'android'
repositories {
mavenCentral()
}
android {
compileSdkVersion 18
buildToolsVersion "18.0.1"
defaultConfig {
minSdkVersion 7
targetSdkVersion 16
}
}
dependencies {
compile 'com.android.support:appcompat-v7:18.0.0'
compile project(':libraries:facebook')
}
facebook 的 sdk build gradle 与链接手册中的相同。