Could not get unknown property 'outputFile' for task ':app:packageDebug'

7.6k Views Asked by At

I try to execute from my terminal the command : ./gradlew testfairyDebug. This return the next error:

FAILURE: Build failed with an exception.

What went wrong: Execution failed for task ':app:testfairyDebug'. Could not get unknown property 'outputFile' for task ':app:packageDebug' of type com.android.build.gradle.tasks.PackageApplication.

Have you any idea to solve this problem. For information, i work on Android Studio 3 and my gradle version is 'com.android.tools.build:gradle:3.0.0-alpha6'

My build.gradle :


    // Top-level build file where you can add configuration options common to all sub-projects/modules.
    
    buildscript {
        ext.kotlin_version = '1.1.2-4'
        repositories {
            maven { url 'https://maven.google.com' }
            maven { url 'https://www.testfairy.com/maven' }
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.0.0-alpha6'
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
            classpath 'com.testfairy.plugins.gradle:testfairy:1.+'
    
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }
    
    
    allprojects {
        repositories {
            jcenter()
            maven { url 'https://maven.google.com' }
            mavenCentral()
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    } 

and my app.build.gradle :


    apply plugin: 'com.android.application'
    
    apply plugin: 'kotlin-android'
    apply plugin: 'kotlin-android-extensions'
    
    apply plugin: 'testfairy'
    
    android {
        compileSdkVersion 25
        buildToolsVersion "25.0.2"
        defaultConfig {
            applicationId "com.name.application"
            minSdkVersion 15
            targetSdkVersion 25
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    
        testfairyConfig {
            apiKey "xxxxxxxxxxxxxxxxxxxxxxxx"
        }
    }
    
    dependencies {
        compile fileTree(include: ['*.jar'], dir: 'libs')
        androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
            exclude group: 'com.android.support', module: 'support-annotations'
        })
        compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
        //noinspection GradleCompatible
        compile 'com.android.support:appcompat-v7:25.3.1'
        testCompile 'junit:junit:4.12'
        compile 'com.android.support.constraint:constraint-layout:1.0.2'
        compile 'com.android.support:design:25.3.1'
        compile 'org.greenrobot:eventbus:3.0.0'
        compile 'com.squareup.retrofit2:retrofit:2.1.0'
        compile 'com.squareup.retrofit2:converter-gson:2.1.0'
        compile 'com.lorentzos.swipecards:library:1.0.9'
        compile 'com.github.rey5137:material:1.2.2'
        compile 'com.squareup.picasso:picasso:2.5.2'
        // Android SDK
        compile 'com.facebook.android:facebook-android-sdk`enter code here`:4.+'
        compile 'org.greenrobot:eventbus:3.0.0'
        compile 'com.android.support:recyclerview-v7:25.1.1'
        compile 'testfairy:testfairy-android-sdk:1.+@aar'
    
    }

Thanks a lot.

2

There are 2 best solutions below

2
On

The error indicates that you are trying to access 'outputFile' from PackageApplication. But I didn't see it in your gradle file. Maybe it is caused by one of your modules? If that's the case, Variant API to manipulate variant outputs is broken with Gradle plugin 3.0. Only simple tasks work. Check out this page: https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#variant_api

0
On

Can you please update TestFairy gradle plugin to version 2.+.

Change the classpath com.testfairy.plugins.gradle:testfairy:1.+ to com.testfairy.plugins.gradle:testfairy:2.+ in the dependencies section of your build.gradle file.