错误信息:

在依赖的AAR元数据中指定的minCompileSdk (31) (META-INF/com/android/build/gradle/aar-metadata.properties)更大 而不是这个模块的compileSdkVersion (android-30)。依赖: androidx.core: core-ktx: 1.7.0-alpha02。 AAR元数据文件: C:\Users\ mohammad.zeeshan1.gradle \ transforms-2 \ \缓存文件- 2.1 \ a20beb0771f59a8ddbbb8d416ea06a9d \ jetified-core-ktx-1.7.0-alpha02 android \ meta - inf \ com \ \制造\ gradle \ aar-metadata.properties。


当前回答

当使用Jetpack Compose导航时,我有这个问题…

我正在使用androidx.navigation:navigation-compose:2.4.0-alpha07

所以我用另一个版本来解决这个问题:

`androidx.navigation:navigation-compose:2.4.0-alpha06`

其他回答

我终于可以解决我的问题了。

问题是什么?

我有以下依赖在一个模块-

implementation "androidx.core:core-ktx:+"

但是其他模块,包括app模块,有如下依赖关系

implementation "androidx.core:core-ktx:1.6.0"

转换

implementation "androidx.core:core-ktx:+"

to

implementation "androidx.core:core-ktx:1.6.0"

解决了我的问题。

我遇到了同样的问题,并发现问题出在生命周期库上。

我改了测试版

androidx.lifecycle: lifecycle-livedata: 2.4.0beta1

到当前稳定版本,

androidx.lifecycle: lifecycle-livedata: 2.3.1

查看Android网站上的版本。

您需要将编译SDK更新到31。听起来它现在被设置为30。在你的Gradle文件中,android块中应该有类似compileSdk的东西。

提高到31。如果出于某种原因,这是个问题,您还可以将依赖项降低到不需要编译SDK版本的版本。

我在几天前工作的一个反应原生项目上遇到了这个问题,突然我得到了这个错误:

* What went wrong:
Execution failed for task ':app:checkDevDebugAarMetadata'.
> Multiple task action failures occurred:
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (31) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-30).
        Dependency: androidx.core:core-ktx:1.7.0-alpha02.
        AAR metadata file: /Users/me/.gradle/caches/transforms-2/files-2.1/ed22ee8b86d25659bbef1e9ee203b75c/jetified-core-ktx-1.7.0-alpha02/META-INF/com/android/build/gradle/aar-metadata.properties.
   > A failure occurred while executing com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction
      > The minCompileSdk (31) specified in a
        dependency's AAR metadata (META-INF/com/android/build/gradle/aar-metadata.properties)
        is greater than this module's compileSdkVersion (android-30).
        Dependency: androidx.core:core:1.7.0-alpha02.
        AAR metadata file: /Users/me/.gradle/caches/transforms-2/files-2.1/23234efc7e9de9bfe6a3fea85a6072ef/core-1.7.0-alpha02/META-INF/com/android/build/gradle/aar-metadata.properties.

在阅读错误消息后,我明白问题出在androidx上。core:core-ktx,所以我搜索了更多关于它的信息,发现一个新版本刚刚发布于去年9月01 https://androidx.tech/artifacts/core/core-ktx/,这是https://androidx.tech/artifacts/core/core-ktx/1.7.0-alpha02,其中有targetSdkVersion = 31

我运行grep -r "androidx。“node_modules和发现我有一个依赖,有实现”androidx。core:core-ktx:+”,它将在我安装应用程序时安装最新版本。我不能只是更新到31,因为它似乎打破了我的一些依赖的代码,我会得到:

unrecognized Attribute name MODULE (class com.sun.tools.javac.util.SharedNameTable$NameImpl)

我真的不知道怎么修,也找不到任何铅,很可能是因为它是新的。

作为解决方案,在文件android/app/build.gradle

在android{}块之前添加以下块。

configurations.all {
    resolutionStrategy { force 'androidx.core:core-ktx:1.7.0-alpha01' }
}

这样做之后,它对我有用。它会强制所有安卓系统。Core: Core -ktx为1.7.0-alpha01

当使用Jetpack Compose导航时,我有这个问题…

我正在使用androidx.navigation:navigation-compose:2.4.0-alpha07

所以我用另一个版本来解决这个问题:

`androidx.navigation:navigation-compose:2.4.0-alpha06`