【发布时间】:2014-03-07 23:03:58
【问题描述】:
有我的行动: 1) 在我的项目的“libs”目录中的 sdk 目录中添加文件 google-play-services.jar。 2)在我的项目(不在解决方案中)的build.gradle中添加依赖“编译文件('libs/google-play-services.jar')”。 同步项目已成功完成,但在运行应用程序后我看到该错误:
任务“:TestMcSiRun:dexDebug”执行失败。
com.android.ide.common.internal.LoggedErrorException:无法运行命令: D:\SDK\sdk\sdk\build-tools\19.0.2\dx.bat --dex --output C:\Users\MCSIMUSIC\AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\dex\debug C:\Users\MCSIMUSIC \AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\classes\debug C:\Users\MCSIMUSIC\AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\dependency-cache\debug C:\Users\MCSIMUSIC\AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\pre-dexed \debug\classes-2b5c8c8b2a23992eb9323b131861658b5a6c4592.jar C:\Users\MCSIMUSIC\AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\pre-dexed\debug\classes-442363482f1c8783c26a5e38b6ee593d3f54a067.jar C:\Users\MCSIMUSIC\AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\pre -dexed\debug\google-play-services-da249c1d3c777ecbc074adaa5e3cd781485d270c.jar C:\Users\MCSIMUSIC\AndroidStudioProjects\TestMcSiRun\TestMcSiRun\build\pre-dexed\debug\support-v4-18.0.0-00a4eeb2a43f491f4d8b1d7928. 错误代码: 2 输出: 意外的顶级异常: com.android.dex.DexException:多个dex文件定义了Lcom/google/ads/AdRequest$ErrorCode; 在 com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) 在 com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) 在 com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) 在 com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) 在 com.android.dx.merge.DexMerger.merge(DexMerger.java:188) 在 com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) 在 com.android.dx.command.dexer.Main.runMonoDex(Main.java:287) 在 com.android.dx.command.dexer.Main.run(Main.java:230) 在 com.android.dx.command.dexer.Main.main(Main.java:199) 在 com.android.dx.command.Main.main(Main.java:103)
我做错了什么? 我的 build.gradle:
apply plugin: 'android'
android {
compileSdkVersion 18
buildToolsVersion '19.0.2'
defaultConfig {
minSdkVersion 14
targetSdkVersion 15
versionCode 1
versionName "1.0"
}
buildTypes {
release {
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:appcompat-v7:18.0.+'
compile 'com.google.android.gms:play-services:4.0.30'
//compile files('libs/google-play-services.jar')
}
【问题讨论】:
-
您已包含两个具有 com.google.ads.AdRequest 的库。请将您的 build.gradle 文件添加到您的问题中。另见stackoverflow.com/questions/22262344/…
-
是的,你是对的,build.gradle 中有两个相同的依赖项: compile 'com.google.android.gms:play-services:4.0.30' compile files('libs/google -play-services.jar')。我尝试在项目中添加谷歌播放服务库,因为我的应用程序要求下载这些文件,但我想用 apk 文件发送这些库,有可能吗?对不起我的语言=)
标签: android-studio google-play-services