找不到生命周期:common-java8 库

Has*_*san 6 android kotlin android-room dagger-hilt

在我将 Gradle 更新到 6.7.1 并将 Gradle 插件更新到 4.2 后,我决定使用 Room、协程、dagger-hilt 和协程的 Flow 构建一个应用程序。
我将 Libraryies 添加到 dependencyecy,甚至在 build.gradle 文件中添加插件 id 和类路径。
然后我尝试构建我的应用程序。但它因错误而停止
**错误:**

Execution failed for task ':app:checkDebugAarMetadata'.
Run Code Online (Sandbox Code Playgroud)

无法解析配置“:app:debugRuntimeClasspath”的所有文件。找不到 android.arch.lifecycle:common-java8:2.2.0。在以下位置搜索: - https://dl.google.com/dl/android/maven2/android/arch/lifecycle/common-java8/2.2.0/common-java8-2.2.0.pom - https:// /repo.maven.apache.org/maven2/android/arch/lifecycle/common-java8/2.2.0/common-java8-2.2.0.pom 必需:项目:app

这是我的 gradle 文件(build.gradle(project)):

buildscript {
ext.kotlin_version = "1.5.0"
ext {
    // App dependencies
    appCompatVersion = "1.2.0"
    constraintLayoutVersion = "2.0.4"
    coroutinesVersion = "1.3.9"
    dataStoreVersion = "1.0.0-alpha02"
    espressoVersion = "3.3.0"
    fragmentVersion = "1.3.0-beta01"
    gradleVersion = "4.1.0"
    hiltAndroidXVersion = "1.0.0-alpha02"
    hiltVersion = "2.28.3-alpha"
    junitVersion = "4.13.1"
    kotlinVersion = "1.4.10"
    ktxVersion = "1.3.2"
    lifecycleVersion = "2.2.0"
    materialVersion = "1.3.0-alpha03"
    navigationVersion = "2.3.1"
    roomVersion = "2.2.5"
    testExtJunitVersion = "1.1.2"
}
repositories {
    google()
    mavenCentral()
}
dependencies {
    classpath 'com.android.tools.build:gradle:4.1.0'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath "androidx.navigation:navigation-safe-args-gradle-plugin:$navigationVersion"
    classpath "com.google.dagger:hilt-android-gradle-plugin:$hiltVersion"
    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}
Run Code Online (Sandbox Code Playgroud)

所有项目{

repositories {
    google()
    mavenCentral()
}}
Run Code Online (Sandbox Code Playgroud)

任务清理(类型:删除)

{ 删除 rootProject.buildDir}

这是针对 build.gradle(module) 的:

plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-kapt'
id 'dagger.hilt.android.plugin'
id 'kotlin-parcelize'
id 'androidx.navigation.safeargs.kotlin'
Run Code Online (Sandbox Code Playgroud)

}

android { 编译SdkVersion 30

defaultConfig {
    applicationId "com.example.justdoit"
    minSdkVersion 21
    targetSdkVersion 30
    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'
}
Run Code Online (Sandbox Code Playgroud)

}

依赖项{

implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.4'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

// Fragment
implementation "androidx.fragment:fragment-ktx:$fragmentVersion"

// Lifecycle + ViewModel & LiveData
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycleVersion"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycleVersion"
implementation "android.arch.lifecycle:common-java8:$lifecycleVersion"

// Navigation Component
implementation "androidx.navigation:navigation-fragment-ktx:$navigationVersion"
implementation "androidx.navigation:navigation-ui-ktx:$navigationVersion"

// Room
implementation "androidx.room:room-runtime:$roomVersion"
kapt "androidx.room:room-compiler:$roomVersion"
implementation "androidx.room:room-ktx:$roomVersion"

// Coroutines
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-core:$coroutinesVersion"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutinesVersion"

// Dagger Hilt
implementation "com.google.dagger:hilt-android:$hiltVersion"
kapt "com.google.dagger:hilt-android-compiler:$hiltVersion"
implementation "androidx.hilt:hilt-lifecycle-viewmodel:$hiltAndroidXVersion"
kapt "androidx.hilt:hilt-compiler:$hiltAndroidXVersion"

// DataStore
implementation "androidx.datastore:datastore-preferences:$dataStoreVersion"
Run Code Online (Sandbox Code Playgroud)

} kapt { CorrectErrorTypes true }

有谁知道为什么会发生这种情况? 感谢您的帮助

小智 5

如果您确实使用 arch 包并且这没有错误,那么版本2.2.0不正确,因为最新版本android.arch.lifecycle:common-java81.1.1

在此输入图像描述

但是,如果您想使用lifecycle-common-java8oflifecycle包,请在 build.gradle(app module) 依赖项中使用 version ,androidx.lifecycle:lifecycle-common-java8而不是使用此版本,因为该版本可用。android.arch.lifecycle:common-java82.2.0

在此输入图像描述

您始终可以通过参考此端点https://maven.google.com/来验证您使用的某些版本的 google 依赖项是否错误且根本无法使用

转到出现错误的包,看看您使用的版本是否确实正确。