:app:dexDebug 添加 libGoogleAnalyticsServices

:app:dexDebug on adding libGoogleAnalyticsServices

在尝试 运行 我的项目时,出现以下错误:

Error:Execution failed for task ':app:dexDebug'. com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_67\bin\java.exe'' finished with non-zero exit value 2

我正在添加 google analytics jar file from here。如果我从 build.gradle

中的 dependencies 中删除这一行 compile files('libs/libGoogleAnalyticsServices.jar'),问题就会消失

1libGoogleAnalyticsServices.jar` 是否干扰了我依赖项中的其他内容?

dependencies {
//compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.facebook.android:facebook-android-sdk:4.1.1'
compile files('libs/nineoldandroids-2.4.0.jar')
compile files('libs/newrelic.android.jar')
compile files('libs/libGoogleAnalyticsServices.jar')
compile files('libs/YouTubeAndroidPlayerApi.jar')
compile 'com.google.android.gms:play-services:7.5.0'
compile('de.keyboardsurfer.android.widget:crouton:1.8.5@aar') {

}

compile ("com.doomonafireball.betterpickers:library:1.6.0")

compile ("com.doomonafireball.betterpickers:library:1.6.0") {
    transitive = true
    exclude group: 'com.android.support', module: 'support-v4'
}
compile project(':circularImageView')

}

根据您链接的页面:

Important: This document describes a legacy version of the SDK. New users should use the latest SDK.

由于最新的 SDK 包含在您的 'com.google.android.gms:play-services:7.5.0' 依赖项中,因此两者重叠并在构建您的应用程序时导致问题。您应该改为遵循 getting started guide for Google Analytics v4

此错误还可能表明您已达到 Android 中的 65k 方法限制。 如果是这种情况,那么您有 3 个选择

有选择地使用播放服务库中需要的部分。这个图书馆本身会让你接近极限。 让 Progaurd 最小化您的应用程序。

使用 Multi-dex 拆分您的 dex 索引。

这些指南将帮助您实现上述选项;

http://googleadsdeveloper.blogspot.ie/2015/01/reducing-google-play-services-impact-on.html

https://developer.android.com/tools/building/multidex.html