Search code examples
androidandroid-gradle-plugindependenciesbuild.gradle

Duplicate class androidx.lifecycle.ViewModelLazy found in modules lifecycle-viewmodel-2.5.0-runtime


I'm using Android Studio Chipmunk | 2021.2.1 Patch 2.

I get the following error when I use the implementation 'androidx.appcompat:appcompat:1.5.0' version.

Duplicate class androidx.lifecycle.ViewModelLazy found in modules lifecycle-viewmodel-2.5.0-runtime (androidx.lifecycle:lifecycle-viewmodel:2.5.0) and lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1) Duplicate class androidx.lifecycle.ViewTreeViewModelKt found in modules lifecycle-viewmodel-2.5.0-runtime (androidx.lifecycle:lifecycle-viewmodel:2.5.0) and lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1)

It works fine after rolling back to the previous implementation 'androidx.appcompat:appcompat:1.4.2' version.

build.gradle:

plugins {
    id 'com.android.application'
    id 'kotlin-android'
    id 'kotlin-kapt'
}

android {
    compileSdk 32

    defaultConfig {
        applicationId "com.halil.ozel.darkmode"
        minSdk 28
        targetSdk 32
        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 {
        dataBinding true
    }
}

dependencies {
    implementation 'androidx.core:core-ktx:1.8.0'
    implementation 'androidx.appcompat:appcompat:1.4.2'
    implementation 'com.google.android.material:material:1.6.1'
    implementation 'androidx.constraintlayout:constraintlayout:2.1.4'

    // Preference
    implementation "androidx.preference:preference-ktx:1.2.0"
}

Can anyone help with similar error?

Thanks.


Solution

  • Finally, This problem was solved.

    build.gradle(project):

    buildscript {
        ext.kotlin_version = '1.7.10'
        repositories {
            google()
            mavenCentral()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:7.2.2'
            classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        }
    }
    
    allprojects {
        repositories {
            google()
            mavenCentral()
        }
    }
    
    task clean(type: Delete) {
        delete rootProject.buildDir
    }
    
    

    build.gradle(app):

    ...
    android {
        compileSdkVersion 33
        defaultConfig {
            applicationId "com.halil.ozel.catchthefruits"
            minSdkVersion 21
            targetSdkVersion 33
            versionCode 1
            versionName "1.0"
            testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
        }
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    
        buildFeatures {
            dataBinding true
        }
    }
    
    ...
    
    implementation 'androidx.appcompat:appcompat:1.5.1'
    
    ...
    

    For more details:

    https://developer.android.com/jetpack/androidx/releases/appcompat