27

I recently upgraded to Android Studio 3.1 and upon building my Kotlin with Java project I got the following warning.

InnerClass annotations are missing corresponding EnclosingMember annotations. Such InnerClass annotations are ignored.

Message {kind=WARNING, text=InnerClass annotations are missing corresponding EnclosingMember annotations. Such InnerClass annotations are ignored., sources=[Unknown source file]}

Here are my Gradle details.

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
}

It doesn't direct me to where the issue is. How can I locate the offending code?

enter image description here

Community
  • 1
  • 1
j2emanue
  • 56,631
  • 57
  • 264
  • 415

2 Answers2

14

It may because some annotations be confused, so just add proguard rule:

-keepattributes *Annotation*
-keep @**annotation** class * {*;}

it worked fine to me.

dujianchi
  • 834
  • 7
  • 9
2

To fix the issue temporarily, I am adding this:

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

Will update if I find a permanent fix. This page for configuring JUnit 5 may also help

Gibolt
  • 33,561
  • 12
  • 157
  • 107