> 任务 :app:checkDebugAarMetadata 在运行 react-native run-android 时失败
Posted
技术标签:
【中文标题】> 任务 :app:checkDebugAarMetadata 在运行 react-native run-android 时失败【英文标题】:> Task :app:checkDebugAarMetadata FAILED when run react-native run-android 【发布时间】:2021-09-14 04:34:43 【问题描述】:我必须将 mincompilesdkversion 更改为 30,然后再更改为 29,现在我收到此错误。
执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.appcompat:appcompat:1.4.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\75e2de9081ba66388e83ea28d3fd2da1\appcompat-1.4.0-alpha03\META-INF\com\android\build\gradle\aar-metadata.properties .
执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.appcompat:appcompat-resources:1.4.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\290cdab22c9c5b1b7c3f8650a9e9566d\jetified-appcompat-resources-1.4.0-alpha03\META-INF\com\android\build\gradle\aar -metadata.properties。 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.emoji2:emoji2-views-helper:1.0.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\c885669bddbda30b297932769f58904c\jetified-emoji2-views-helper-1.0.0-alpha03\META-INF\com\android\build\gradle \aar-metadata.properties。 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.emoji2:emoji2:1.0.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\078363885b7b4397f6f0ba1e544abc8e\jetified-emoji2-1.0.0-alpha03\META-INF\com\android\build\gradle\aar-metadata 。特性。 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.core:core:1.7.0-alpha01。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\805c250fb9ce03c9ddefabde06af7912\core-1.7.0-alpha01\META-INF\com\android\build\gradle\aar-metadata.properties .
尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。
通过https://help.gradle.org获得更多帮助
8 秒后构建失败
错误 无法安装应用程序。确保您已设置 Android 开发环境:https://reactnative.dev/docs/environment-setup。 错误:命令失败:gradlew.bat app:installDebug -PreactNativeDevServerPort=8081
FAILURE:构建失败并出现异常。
出了什么问题: 任务“:app:checkDebugAarMetadata”执行失败。发生多个任务操作失败: 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.appcompat:appcompat:1.4.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\75e2de9081ba66388e83ea28d3fd2da1\appcompat-1.4.0-alpha03\META-INF\com\android\build\gradle\aar-metadata.properties . 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.appcompat:appcompat-resources:1.4.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\290cdab22c9c5b1b7c3f8650a9e9566d\jetified-appcompat-resources-1.4.0-alpha03\META-INF\com\android\build\gradle\aar -metadata.properties。 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.emoji2:emoji2-views-helper:1.0.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\c885669bddbda30b297932769f58904c\jetified-emoji2-views-helper-1.0.0-alpha03\META-INF\com\android\build\gradle \aar-metadata.properties。 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.emoji2:emoji2:1.0.0-alpha03。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\078363885b7b4397f6f0ba1e544abc8e\jetified-emoji2-1.0.0-alpha03\META-INF\com\android\build\gradle\aar-metadata 。特性。 执行 com.android.build.gradle.internal.tasks.CheckAarMetadataWorkAction 时发生故障 > 指定的 minCompileSdk (30) 依赖项的 AAR 元数据(META-INF/com/android/build/gradle/aar-metadata.properties) 大于此模块的 compileSdkVersion (android-29)。 依赖:androidx.core:core:1.7.0-alpha01。 AAR 元数据文件:C:\Users\dell.gradle\caches\transforms-2\files-2.1\805c250fb9ce03c9ddefabde06af7912\core-1.7.0-alpha01\META-INF\com\android\build\gradle\aar-metadata.properties .
尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。运行 --scan 以获得完整的见解。
通过https://help.gradle.org获得更多帮助
【问题讨论】:
您是否尝试清理构建?来自 android studio/build/Clean Project 是的。我终于解决了这个问题。 【参考方案1】:更改这两行,它不起作用
来自
compileSdkVersion = 29
targetSdkVersion = 29
到
compileSdkVersion = 30
targetSdkVersion = 30
【讨论】:
我不得不从 [compileSdkVersion = 30 targetSdkVersion = 30] 更改为 [compileSdkVersion = 31 targetSdkVersion = 31] 来解决这个问题 @JayantJoseph 设置compileSdk 31
没有任何其他更改也可以。
@JayantJoseph 它破坏了我的所有项目。
@SalahAdDin 也许再试一次,它对我有用(31 版)。
我不得不手动修复它。【参考方案2】:
我通过将此代码添加到 android/app/build.gradle
来修复它
dependencies
...other dependencies,
implementation ("androidx.browser:browser:1.3.0")
force = true
【讨论】:
【参考方案3】:this is the simple solution. make changes in your build.gradle 文件
如果您没有 ndk 版本,请复制并替换这些行,然后删除 ndk 版本
ext
buildToolsVersion = "29.0.3"
minSdkVersion = 21
compileSdkVersion = 30
targetSdkVersion = 30
ndkVersion = "20.1.5948944"
【讨论】:
请不要将您的解决方案发布为图片。特别是没有文字解释。相反,从您的编辑器中复制文本并将其发布,最多可以同时使用您,并极大地简化其他用户应用您的解决方案的生活。 改变了这一点。因为我是新用户所以我没有太多经验 没关系,我们都去过一次!【参考方案4】:我也遇到了同样的问题。
core-ktx 的库有问题,然后我用这个替换它:
implementation("androidx.core:core-ktx:1.6.0")
在 app build.gradle 中将您的版本更改为 30:
compileSdkVersion = 30
targetSdkVersion = 30
我的问题已解决,可能对您的情况也有帮助。
【讨论】:
【参考方案5】:我使用的是 RN 0.64.2 版本,并且 react-native-firebase 库可传递地引入较新版本的 androidx.browser:browser:1.4.0-alpha01 和 androidx.appcompat:appcompat:1.4.0-alpha03 .
在我的 app/build.gradle 中,我将 androidx.browser:browser
和 androidx.appcompat:appcompat
版本强制为早期版本。
runtimeOnly(group: 'androidx.browser', name: 'browser', version: '1.3.0')
force = true
runtimeOnly(group: 'androidx.appcompat', name: 'appcompat', version: '1.3.1')
force = true
【讨论】:
【参考方案6】:来自
buildToolsVersion = "29.0.2"
minSdkVersion = 16
compileSdkVersion = 29
targetSdkVersion = 29
到
buildToolsVersion = "30.0.0"
minSdkVersion = 16
compileSdkVersion = 30
targetSdkVersion = 30
react-native run-android
【讨论】:
【参考方案7】:我通过将 buildToolsVersion、compileSdkVersion 和 targetSdkVersion 从 29 升级到 31 解决了这个问题
【讨论】:
【参考方案8】:只需将此代码块添加到应用级别的 build.gradle 文件末尾
configurations.all
resolutionStrategy
force 'androidx.core:core-ktx:1.6.0'
【讨论】:
【参考方案9】:将 compileSdkVersion 28 更改为 compileSdkVersion 30 和 targetSdkVersion 28 到 targetSdkVersion 30 解决了我的问题 你是如何解决这个问题的
【讨论】:
【参考方案10】:像这样改变。已更新。
plugins
id 'com.android.application'
id 'com.google.gms.google-services'
机器人 编译SDK 31
defaultConfig
applicationId "com.example.theblog"
minSdk 28
targetSdk 31
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
compileSdkVersion 31
依赖
implementation 'androidx.appcompat:appcompat:1.4.1'
implementation 'com.google.android.material:material:1.5.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
implementation 'com.google.firebase:firebase-database:20.0.3'
implementation 'com.google.firebase:firebase-auth:21.0.1'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
【讨论】:
见“Explaining entirely code-based answers”。虽然这在技术上可能是正确的,但它并没有解释为什么它可以解决问题或应该是选择的答案。除了帮助解决问题,我们还应该进行教育。【参考方案11】:compileSdkVersion = 31 targetSdkVersion = 31
【讨论】:
正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。【参考方案12】:错误也可能在这里。
buildscript
ext.kotlin_version = '1.6.10'
repositories
google()
jcenter()
【讨论】:
以上是关于> 任务 :app:checkDebugAarMetadata 在运行 react-native run-android 时失败的主要内容,如果未能解决你的问题,请参考以下文章
Spring4 Quartz2 动态任务,Spring4整合quartz2.2.3简单动态任务