Jetpack compose breaks Room compiler

Semanticer

I created a completely fresh jetpack compose project (from the project template) with Android Studio 4.0 Canary 6 and I attempted to add room dependencies. Here is my app-level build.gradle:

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'


android {
    compileSdkVersion 29
    buildToolsVersion "29.0.2"

    defaultConfig {
        applicationId "com.example.composewithroom"
        minSdkVersion 29
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }
    }
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
    kotlinOptions {
        jvmTarget = '1.8'
    }
    buildFeatures {
        compose true
    }
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
    implementation 'androidx.appcompat:appcompat:1.1.0'
    implementation 'androidx.core:core-ktx:1.1.0'
    implementation 'androidx.ui:ui-framework:0.1.0-dev03'
    implementation 'androidx.ui:ui-layout:0.1.0-dev03'
    implementation 'androidx.ui:ui-material:0.1.0-dev03'
    implementation 'androidx.ui:ui-tooling:0.1.0-dev03'


    implementation "androidx.room:room-runtime:2.2.2"
    implementation "androidx.room:room-ktx:2.2.2"
    kapt "androidx.room:room-compiler:2.2.2" // e: java.lang.NoSuchMethodError: org.jetbrains.kotlin.codegen.state.GenerationState$Builder.isIrBackend(Z)Lorg/jetbrains/kotlin/codegen/state/GenerationState$Builder;

    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test.ext:junit:1.1.1'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}

I get this error when I try to build it:

e: java.lang.NoSuchMethodError: org.jetbrains.kotlin.codegen.state.GenerationState$Builder.isIrBackend(Z)Lorg/jetbrains/kotlin/codegen/state/GenerationState$Builder;

This can be either "fixed" by removing kapt "androidx.room:room-compiler:2.2.2" or disabling compose compose true

Does anyone have any idea how to fix this or is the room database just unusable with Compose at the moment?

Xavier Rubio Jansana

Should be fixed in 1.3.61... but Jetpack Compose compiler plugin is not updated.

You can find more information in the following YouTrack issue: IR (Jetpack Compose), KAPT, Room: "AssertionError: IR backend shouldn't call KotlinTypeMapper.mapType: MainActivity". Last comment states that:

The problem here is that JetPack Compose hasn't updated its internal Kotlin compiler to 1.3.61 yet. We'll see what we can do about it.

Also, the following issue in Google Issue Tracker: Annotation processors fail when compose is enabled

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Java

Center composable in Jetpack compose

From Dev

ProvideEmphasis not found in jetpack compose

From Dev

ProvideEmphasis not found in jetpack compose

From Dev

Jetpack Compose – LazyColumn not recomposing

From Java

Android Jetpack compose IconButton padding

From Dev

Jetpack Compose list diffs animation

From Dev

Aligning a resized TextField in Jetpack Compose

From Dev

Jetpack Compose draw on image with Painter

From Dev

Create chip with outline Jetpack Compose

From Dev

How to handle navigation in Jetpack Compose?

From Dev

Compiler optimization breaks lazy iterator

From Dev

Room - compiler message file broken

From Dev

Removing turbolinks breaks Actioncable chat room

From Java

Material icon size adjustment in Jetpack Compose?

From Java

Jetpack Compose State: Modify class property

From Java

How can I get onTouchEvent in Jetpack Compose?

From Java

Jetpack compose: Android Tests won't run

From Dev

How to add Image in Android using Jetpack Compose

From Dev

Button Long Press Listener in Android jetpack compose

From Dev

How to convert TextUnit to Dp in Jetpack Compose?

From Dev

How to know if Text is visible on Jetpack Compose?

From Dev

Show a new line in a Text component in Jetpack Compose

From Dev

Putting something below a LazyColumn in Jetpack Compose

From Dev

Can I write Jetpack Compose components in Java?

From Dev

C sprintf breaks with byte parameters (Keil compiler)

From Dev

C sprintf breaks with byte parameters (Keil compiler)

From Java

Jetpack Compose method implementation not showing(Ctrl does not highlight functions on hover)

From Dev

How can I achieve this Button Animation in Jetpack Compose?

From Dev

How to enter text in Jetpack compose TextField through UI tests?

Related Related

  1. 1

    Center composable in Jetpack compose

  2. 2

    ProvideEmphasis not found in jetpack compose

  3. 3

    ProvideEmphasis not found in jetpack compose

  4. 4

    Jetpack Compose – LazyColumn not recomposing

  5. 5

    Android Jetpack compose IconButton padding

  6. 6

    Jetpack Compose list diffs animation

  7. 7

    Aligning a resized TextField in Jetpack Compose

  8. 8

    Jetpack Compose draw on image with Painter

  9. 9

    Create chip with outline Jetpack Compose

  10. 10

    How to handle navigation in Jetpack Compose?

  11. 11

    Compiler optimization breaks lazy iterator

  12. 12

    Room - compiler message file broken

  13. 13

    Removing turbolinks breaks Actioncable chat room

  14. 14

    Material icon size adjustment in Jetpack Compose?

  15. 15

    Jetpack Compose State: Modify class property

  16. 16

    How can I get onTouchEvent in Jetpack Compose?

  17. 17

    Jetpack compose: Android Tests won't run

  18. 18

    How to add Image in Android using Jetpack Compose

  19. 19

    Button Long Press Listener in Android jetpack compose

  20. 20

    How to convert TextUnit to Dp in Jetpack Compose?

  21. 21

    How to know if Text is visible on Jetpack Compose?

  22. 22

    Show a new line in a Text component in Jetpack Compose

  23. 23

    Putting something below a LazyColumn in Jetpack Compose

  24. 24

    Can I write Jetpack Compose components in Java?

  25. 25

    C sprintf breaks with byte parameters (Keil compiler)

  26. 26

    C sprintf breaks with byte parameters (Keil compiler)

  27. 27

    Jetpack Compose method implementation not showing(Ctrl does not highlight functions on hover)

  28. 28

    How can I achieve this Button Animation in Jetpack Compose?

  29. 29

    How to enter text in Jetpack compose TextField through UI tests?

HotTag

Archive