Attention: variante API.getJavaCompile () "est obsolète et a été remplacé par" variante.getJavaCompileProvider ()"

Soudain lors de la Synchronisation de Gradle, j'obtiens cette erreur:

WARNING: API 'variant.getJavaCompile()' is obsolete and has been replaced with 'variant.getJavaCompileProvider()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance
Affected Modules: app

j'ai un <!-Pour le module app:

apply plugin: 'com.android.application'

apply plugin: 'kotlin-android'

apply plugin: 'kotlin-android-extensions'
apply plugin: 'com.google.gms.google-services'

apply plugin: 'io.fabric'

android {
    compileSdkVersion 28
    buildToolsVersion "28.0.2"
    defaultConfig {
        applicationId "..."
        minSdkVersion 21
        targetSdkVersion 28
        versionCode 1
        versionName "..."
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        versionNameSuffix = version_suffix

        [...]
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'

            [...]
        }
        debug {
            [...]
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.2.61"
    implementation 'androidx.appcompat:appcompat:1.0.0-rc02'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    implementation "com.android.support:preference-v7:28.0.0"
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
    implementation 'com.google.android.material:material:1.0.0-rc02'

    [...]
}

je peux compiler correctement l'application, mais c'est un peu dérangeant, et comme je le vois, quelque chose s'arrêter de travailler à la fin de 2019. Toutes les idées de quoi s'agit-il et comment le résoudre?

16
demandé sur Arnyminer Z 2018-09-23 23:36:32

2 réponses

ce n'est qu'un avertissement et il sera probablement corrigé avant 2019 avec les mises à jour du plugin donc ne vous inquiétez pas à ce sujet. Je vous recommande d'utiliser des versions compatibles de vos plugins et gradle.

vous pouvez vérifier votre version plugin et la version gradle ici pour une meilleure expérience et performance.

https://developer.android.com/studio/releases/gradle-plugin

essayez d'utiliser les versions stables pour une mise en garde et sans erreur code.

13
répondu Harshil Shah 2018-09-23 21:03:54

ceci est un avertissement craché par les outils de construction pour deux raisons.

1. Un des plugin s'appuie sur Task au lieu de TaskProvider, il n'y a pas grand chose que nous puissions faire.

2. Vous avez configuré l'utilisation de la tâche, où comme il soutient TaskProvider.

WARNING: API 'variant.getGenerateBuildConfig()' is obsolete and has been replaced with 'variant.getGenerateBuildConfigProvider()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance

WARNING: API 'variant.getJavaCompile()' is obsolete and has been replaced with 'variant.getJavaCompileProvider()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance

WARNING: API 'variant.getMergeResources()' is obsolete and has been replaced with 'variant.getMergeResourcesProvider()'.
It will be removed at the end of 2019.
For more information, see https://d.android.com/r/tools/task-configuration-avoidance

attention aux bribes comme ci-dessous & mise à jour.

android {
    <library|application>Variants.all { variant ->
        /* Disable Generating Build config */
        // variant.generateBuildConfig.enabled = true // <- Deprecated
        variant.generateBuildConfigProvider.get().enabled = true // Replacement
    }
}

de même, trouvez les usages de 'variant.getJavaCompile()' ou 'variant.javaCompile','variant.getMergeResources()' ou 'variant.mergeResources'. Remplacer comme ci-dessus.

plus d'information au Évitement De La Configuration Des Tâches

0
répondu VenomVendor 2018-09-25 18:01:26