任务执行失败';应用程序:prepareDebugAndroidTestDependencies';

任务执行失败';应用程序:prepareDebugAndroidTestDependencies';,android,android-studio,android-gradle-plugin,build.gradle,ui-testing,Android,Android Studio,Android Gradle Plugin,Build.gradle,Ui Testing,我正试图在Android Studio中为我的Android应用程序构建UI测试。问题是我不能运行它们。我收到消息:任务“app:prepareDebugAndroidTestDependencies”的执行失败,我找不到它的相关内容。当我运行应用程序时,它会完美启动,但当我尝试运行测试时,它会显示上面提到的消息。我的build.gradle如下所示: apply plugin: 'com.android.application' android { compileSdkVers

我正试图在Android Studio中为我的Android应用程序构建UI测试。问题是我不能运行它们。我收到消息:任务“app:prepareDebugAndroidTestDependencies”的执行失败,我找不到它的相关内容。当我运行应用程序时,它会完美启动,但当我尝试运行测试时,它会显示上面提到的消息。我的build.gradle如下所示:

    apply plugin: 'com.android.application'
    android {
compileSdkVersion 22
buildToolsVersion "22.0.0"

defaultConfig {
    applicationId "ba.etf.pkks.eldaralmin.libraryapp"
    minSdkVersion 15
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

repositories {
mavenCentral()

maven {
    url "https://raw.github.com/embarkmobile/zxing-android-minimal/mvn-repo/maven-repository/"
}
}

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.android.support:support-v4:22.0.0'
compile 'com.readystatesoftware.sqliteasset:sqliteassethelper:+'
// Supports Android 4.0.3 and later (API level 15)
compile 'com.embarkmobile:zxing-android-minimal:2.0.0@aar'

// Supports Android 2.1 and later (API level 7), but not optimal for later Android versions.
// If you only plan on supporting Android 4.0.3 and up, you don't need to include this.
compile 'com.embarkmobile:zxing-android-legacy:2.0.0@aar'

// Convenience library to launch the scanning and encoding Activities.
// It automatically picks the best scanning library from the above two, depending on the
// Android version and what is available.
compile 'com.embarkmobile:zxing-android-integration:2.0.0@aar'

// Version 3.0.x of zxing core contains some code that is not compatible on Android 2.2 and earlier.
// This mostly affects encoding, but you should test if you plan to support these versions.
// Older versions e.g. 2.2 may also work if you need support for older Android versions.
compile 'com.google.zxing:core:3.0.1'
compile 'com.nononsenseapps:filepicker:2.1'
compile 'com.astuetz:pagerslidingtabstrip:1.0.1'
compile 'com.google.code.gson:gson:1.7.2'
androidTestCompile 'com.android.support.test:runner:0.2'
androidTestCompile 'com.android.support.test:rules:0.2'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.1'

}
我的测试运行/调试配置如下图所示:


有人能帮我找出问题出在哪里吗?

在你的应用程序
build.gradle
中在
android{}
中添加以下内容:

  configurations.all {
    resolutionStrategy.force 'com.google.code.findbugs:jsr305:3.0.1'
}
但为什么会导致这样的结果呢

运行检测测试时,主APK和测试APK共享相同的类路径。如果主APK和测试APK使用相同的库(例如Guava),但版本不同,Gradle构建将失败。如果gradle没有注意到这一点,您的应用程序在测试和正常运行期间的行为可能会有所不同(包括在其中一种情况下崩溃)

要使构建成功,只需确保两个APK使用相同的版本。如果错误是关于间接依赖项(build.gradle中没有提到的库),只需将较新版本的依赖项添加到需要它的配置(“compile”或“androidTestCompile”)。您还可以使用Gradle的解决策略机制。您可以通过运行./gradlew:app:dependencies和./gradlew:app:androidDependencies来检查依赖关系树


希望它能帮助你。谢谢你的努力。我在一年多前就遇到了这个问题,并解决了它,但没有更新帖子的答案。遗憾的是,这对我没用。我使用的是编译器DKVersion25 buildToolsVersion“23.0.1”,我的所有其他版本都更高,但我只是用这个相关的解决方案来修复它:非常感谢您,经过数小时的努力,我终于修复了它!我还建议确保compileSDKVersion与minSDKVersion和targetSDKVersion匹配。