Tidak dapat memperoleh properti 'outputFile' yang tidak diketahui untuk tugas ':app:packageDebug'

Saya mencoba menjalankan perintah dari terminal saya: ./gradlew testfairyDebug. Ini mengembalikan kesalahan berikutnya:

KEGAGALAN: Pembangunan gagal dengan pengecualian.

Apa yang salah: Eksekusi gagal untuk tugas ':app:testfairyDebug'. Tidak dapat memperoleh properti 'outputFile' yang tidak diketahui untuk tugas ':app:packageDebug' dengan tipe com.android.build.gradle.tasks.PackageApplication.

Apakah Anda punya ide untuk mengatasi masalah ini. Sebagai informasi, saya bekerja di Android Studio 3 dan versi gradle saya adalah 'com.android.tools.build:gradle:3.0.0-alpha6'

Build.gradle saya:


    // 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
    } 

dan app.build.gradle saya:


    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'
    
    }

Terima kasih banyak.


person PAx    schedule 19.07.2017    source sumber


Jawaban (2)


Kesalahan menunjukkan bahwa Anda mencoba mengakses 'outputFile' dari PackageApplication. Tapi saya tidak melihatnya di file gradle Anda. Mungkin ini disebabkan oleh salah satu modul Anda? Jika demikian, Variant API untuk memanipulasi keluaran varian akan rusak dengan plugin Gradle 3.0. Hanya tugas sederhana yang berhasil. Lihat halaman ini: https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html#variant_api

person Vicki Jin    schedule 27.07.2017
comment
kekecewaan! ..fungsi yang berguna dikorbankan untuk waktu konfigurasi yang lebih cepat. Bagi saya, sepertinya ini merupakan kasus optimasi berlebihan. Mengembalikan ke 2.3.3... - person donfuxx; 30.10.2017
comment
Perubahan apa yang diperlukan untuk hal yang sama. output.packageApplication.outputFile = File baru(apk.parent, apkName + '.apk') - person Hiren Patel; 27.04.2018

Bisakah Anda memperbarui plugin gradle TestFairy ke versi 2.+.

Ubah classpath com.testfairy.plugins.gradle:testfairy:1.+ menjadi com.testfairy.plugins.gradle:testfairy:2.+ di bagian dependensi file build.gradle Anda.

person giltsl    schedule 21.02.2018