安装react-native-paystack-webview后Android编译失败:compileDebugAndroidTestKotlin错误
解决react-native-paystack-webview Android构建compileDebugAndroidTestKotlin错误
这个错误是由于Kotlin Gradle插件版本与项目Gradle版本不兼容导致的:react-native-paystack-webview依赖的旧版Kotlin插件使用了IncrementalTaskInputs作为@TaskAction方法的参数,而高版本Gradle已经不再支持这种用法。
以下是几种可行的解决方案:
方案1:统一项目Kotlin版本
在项目根目录的build.gradle(RN 0.70+可能是settings.gradle)中强制指定所有模块使用兼容的Kotlin版本:
// 根build.gradle buildscript { ext { kotlinVersion = '1.8.22' // 选择与你的Gradle版本匹配的Kotlin版本,比如Gradle 8.x对应Kotlin 1.8+ } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion" } } // 若使用RN 0.71+,在settings.gradle的pluginManagement中添加 pluginManagement { plugins { id "org.jetbrains.kotlin.android" version "1.8.22" apply false } }
方案2:排除库自带的Kotlin插件依赖
在app模块的build.gradle中修改依赖声明,排除react-native-paystack-webview自带的Kotlin插件,强制使用项目统一的版本:
dependencies { implementation(project(':react-native-paystack-webview')) { exclude group: 'org.jetbrains.kotlin', module: 'kotlin-gradle-plugin' } }
方案3:禁用该库的AndroidTest任务(临时 workaround)
如果不需要运行该库的Android测试用例,可以直接禁用相关任务,绕过编译错误:
// 根build.gradle subprojects { if (name == 'react-native-paystack-webview') { tasks.withType(Test) { enabled = false } } }
执行完上述任一方案后,清理构建缓存并重新构建:
./gradlew clean ./gradlew assembleDebug
内容的提问来源于stack exchange,提问作者Precious Dim
相关产品推荐
相关产品推荐

