Java 在Android中使用Facebook SDK 4.0.0和Parse.com库时出现Build.Gradle问题
我已经将问题缩小到项目中的重叠依赖项,但是,我不确定要正确构建项目,应该排除哪些依赖项。 如果我从我的libs文件夹中删除ParseFacebookUtilsV3文件,那么我会得到另一个DexException,其中有一个重复的LBolts/aggregateeException 这是我的gradle.build文件:Java 在Android中使用Facebook SDK 4.0.0和Parse.com库时出现Build.Gradle问题,java,android,facebook,parse-platform,build.gradle,Java,Android,Facebook,Parse Platform,Build.gradle,我已经将问题缩小到项目中的重叠依赖项,但是,我不确定要正确构建项目,应该排除哪些依赖项。 如果我从我的libs文件夹中删除ParseFacebookUtilsV3文件,那么我会得到另一个DexException,其中有一个重复的LBolts/aggregateeException 这是我的gradle.build文件: apply plugin: 'com.android.application' android { compileSdkVersion 21 buildTool
apply plugin: 'com.android.application'
android {
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "kevts.washington.edu.fiternity"
minSdkVersion 15
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile 'com.facebook.android:facebook-android-sdk:4.0.0'
}
以下是我的libs文件夹的内容:
螺栓-android-1.1.4.jar
螺栓-android-1.1.4.jar.properties
bolts-android-1.1.4-javadoc.jar
Parse-1.9.0.jar
Parse-1.9.0.jar.properties
Parse-1.9.0-javadoc
ParseCrashReporting-1.9.0.jar
ParseCrashReporting-1.9.0.jar.properties
ParseCrashReporting-1.9.0-javadoc
ParseFacebookUtilsV3-1.9.0.jar
ParseFacebookUtilsV3-1.9.0.jar.properties
ParseFacebookUtilsV3-1.9.0-javadoc
ParseFacebookUtilsV4-1.9.0.jar
ParseFacebookUtilsV4-1.9.0.jar.properties
ParseFacebookUtilsV4-1.9.0-javadoc
第三方许可证.txt
下面是我得到的错误:
:app:preDexDebug最新
:app:dexDebug
意外的顶级异常:
com.android.dex.DexException:多个dex文件定义Lcom/parse/FacebookAuthenticationProvider$1;
在com.android.dx.merge.dexmmerge.readSortableTypesDexMerger.java:596
位于com.android.dx.merge.dexmmerge.getSortedTypesDexMerger.java:554
位于com.android.dx.merge.dexmmerge.mergeClassDefsDexMerger.java:535
位于com.android.dx.merge.dexmerge.mergedexesmerge.java:171
位于com.android.dx.merge.dexmerge.mergedexmerge.java:189
位于com.android.dx.command.dexer.Main.mergeLibraryDexBuffersMain.java:454
位于com.android.dx.command.dexer.Main.runMonoDexMain.java:303
位于com.android.dx.command.dexer.Main.runMain.java:246
位于com.android.dx.command.dexer.Main.mainMain.java:215
位于com.android.dx.command.Main.mainMain.java:106
错误:任务“:app:dexDebug”的执行失败
com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:process'command'/usr/lib/jvm/java-7-openjdk-amd64/bin/java以非零退出值2结束
提前感谢。在渐变中添加以下行
compile 'com.parse.bolts:bolts-android:1.+'
compile fileTree(dir: 'libs', include: 'Parse-*.jar')
添加这些行会导致无法识别ParseFacebookUtils,并且它仍然无法生成。除了您的建议之外,我还添加了以下行:compile fileTreedir:'libs',包括:['ParseFacebookUtilsV4-1.9.0.jar']我的程序能够构建。这取决于你是否有一个单独的用于Facebook utils的jar,它会抛出一个错误。我有一个全能的jar,所以没有问题。