17
votes

I am converting my Android application from Java to Kotlin. It is working fine, except when I try to convert a file that is using Android Data Binding Library. In that case, Android Studio complains at compile time about unresolved reference:

Error:(10, 44) Unresolved reference: AdapterHistoriesListBinding

Where AdapterHistoriesListBinding is the name of a file that should be generated by the Data Binding Library. It was working correctly in Java, so I guess it is an issue with Kotlin.

I am using Android Studio 2.0.0-beta6, Android Gradle Plugin 2.0.0-beta6 and Kotlin 1.0. Is there something to do to make the Data Binding Library work with Kotlin?

2

2 Answers

20
votes

Few steps to setup databinding in your Kotlin project.

  1. Tell kapt to use databinding compiler in module dependencies:

    dependencies {
      kapt 'com.android.databinding:compiler:2.0.0-beta6'
    }
    
  2. As Shintaro Katafuchi mentioned, you should tell kapt to generate stubs.

    kapt {
      generateStubs = true
    }
    
2
votes

Have you tried adding following setting in your build.gradle?

kapt {
    generateStubs = true
}