首先,当我尝试使用“import module”添加它然后“添加依赖”时,我收到错误:
错误:(19,0)无法在项目':facebook'上找到属性'ANDROID_BUILD_MIN_SDK_VERSION'。
所以我继续在facebook模块文件夹中创建了一个gradle.properties文件,然后它给了我这个错误:
错误:(111,0)在调用setTargetInfo()之前无法调用getBootClasspath()。
为此,我甚至无法在网上找到类似的问题。之后我尝试用maven导入它。我按照https://developers.facebook.com/quickstarts/我的build.gradle文件中的说明进行操作:
repositories { mavenCentral() }
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile files('libs/bolts-android-1.1.4.jar')
compile files('libs/Parse-1.8.2.jar')
compile files('libs/ParseCrashReporting-1.8.2.jar')
compile 'com.facebook.android:facebook-android-sdk:3.21.1'
}
我得到的错误是:
Gradle任务[:app:assembleDebug] :app:preBuild UP-TO-DATE :app:preDebugBuild UP-TO-DATE :app:compileDebugNdk UP-TO-DATE :应用:checkDebugManifest :app:preReleaseBuild UP-TO-DATE :app:prepareComAndroidSupportAppcompatV72103Library UP-TO-DATE :app:prepareComAndroidSupportSupportV42103Library UP-TO-DATE :app:prepareComFacebookAndroidFacebookAndroidSdk3211Library UP-TO-DATE :应用:prepareDebugDependencies :app:compileDebugAidl UP-TO-DATE :app:compileDebugRenderscript UP-TO-DATE :app:generateDebugBuildConfig UP-TO-DATE :app:generateDebugAssets UP-TO-DATE :app:mergeDebugAssets UP-TO-DATE :app:generateDebugResValues UP-TO-DATE :app:generateDebugResources UP-TO-DATE :app:mergeDebugResources UP-TO-DATE :app:processDebugManifest UP-TO-DATE :app:processDebugResources UP-TO-DATE :app:generateDebugSources UP-TO-DATE :应用:compileDebugJava :app:preDexDebug UP-TO-DATE :应用:dexDebug 意外的顶级例外情况: com.android.dex.DexException:多个dex文件定义Lbolts / AggregateException; 在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596) 在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554) 在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535) 在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) 在com.android.dx.merge.DexMerger.merge(DexMerger.java:189) 在com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) 在com.android.dx.command.dexer.Main.runMonoDex(Main.java:303) 在com.android.dx.command.dexer.Main.run(Main.java:246) 在com.android.dx.command.dexer.Main.main(Main.java:215) 在com.android.dx.command.Main.main(Main.java:106) 错误:任务':app:dexDebug'的执行失败。 com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'C:\ Program Files \ Java \ jdk1.7.0_45 \ bin \ java.exe''以非完成零退出值2 信息:建筑失败 信息:总时间:4.234秒 信息:1错误 信息:0警告 信息:请参阅控制台中的完整输出
从我在其他类似问题中看到的情况来看,我认为facebook和parse都可能正在尝试编译bolts-android-1.1.4.jar
并且我评论了它但没有任何改变。
我正在努力工作8小时,所以任何帮助都表示赞赏。
答案 0 :(得分:8)
这是known issue,is fixed通过将gradle更新为:
dependencies {
classpath 'com.android.tools.build:gradle:1.1.2'
}
归功于this post。
答案 1 :(得分:3)
只需采用maven方式,您的应用build.gradle
应如下所示:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile 'com.facebook.android:facebook-android-sdk:3.21.1'
// compile files('libs/bolts-android-1.1.4.jar')
// compile files('libs/Parse-1.8.2.jar')
// compile files('libs/ParseCrashReporting-1.8.2.jar')
}
然后在终端窗口中转到项目的目录并输入:
gradlew.bat clean
重新启动Android Studio,你应该好好去。
答案 2 :(得分:2)
我有一个类似的问题,我认为这是Facebook,因为它发生在gradle.build
我将最新的sdk添加到我的依赖项的时候,但这只是我的疏忽。我在两个不同的com.android.tools.build:gradle:1.1.2
文件中有1.1.1
和gradle.build
的冲突版本。
应用程序/ gradle.build
dependencies {
...
compile 'com.android.tools.build:gradle:1.1.2'
...
}
顶级gradle.build
dependencies {
classpath 'com.android.tools.build:gradle:1.1.0'
}
我在项目的gradle.build
文件中注释了该行,从命令行运行gradlew clean
,重新启动了Android Studio,然后在Universe中恢复了订单。
答案 3 :(得分:0)
您可以参考https://stackoverflow.com/a/28697252/2657401
这解决了Android在Android Studio 1.1.0中的问题