web-dev-qa-db-fra.com

Android studio warning - Les annotations Inner Class sont manquantes pour les annotations correspondant au membre inclus.

J'ai récemment mis à niveau vers Android Studio 3.1 et lors de la construction de mon Kotlin avec Java, j'ai reçu l'avertissement suivant.

Les annotations InnerClass ne contiennent pas les annotations EnclosingMember correspondantes. Ces annotations InnerClass sont ignorées.

Message {kind = WARNING, text = Les annotations textuelles InnerClass ne correspondent pas aux annotations EnclosingMember correspondantes. Ces annotations InnerClass sont ignorées., Sources = [fichier source inconnu]}

Voici mes détails Gradle.

Android {
compileSdkVersion 27
//buildToolsVersion '27.0.3'
defaultConfig {
    minSdkVersion 16
    targetSdkVersion 27
    applicationId "org.myapp"
    versionCode generateVersionCode()
  //...
    multiDexEnabled true
}

compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}

Cela ne m'indique pas où est le problème. Comment localiser le code incriminé?

enter image description here

26
j2emanue

Il se peut que certaines annotations soient confuses. Il suffit donc d’ajouter la règle proguard:

-keepattributes * Annotation *
- garder @ ** annotation ** classe * {*;}

cela a bien fonctionné pour moi.

12
dujianchi

Pour résoudre le problème temporairement, j'ajoute ceci:

buildTypes {
    release {
        lintOptions {
            checkReleaseBuilds false
            abortOnError false
        }
    }
}

Mettra à jour si je trouve un correctif permanent. Cette page pour configurer JUnit 5 peut aussi aider

2
Gibolt