错误---->任务:展示权限:编译DebugKotlin失败

uxh89sit  于 2022-11-16  发布在  Kotlin
关注(0)|答案(5)|浏览(350)

KotlinGradle插件在不同的子项目中加载了多次,这是不受支持的,可能会破坏构建。
如果使用Gradle 'plugins {...}' DSL应用Kotlin插件的子项目指定了显式版本,即使版本相同,也可能会发生这种情况。请将Kotlin插件添加到公共父项目或根项目,然后移除子项目中的版本。
如果父项目不需要插件,请在plugin行中添加“apply false”。请参见:https://docs.gradle.org/current/userguide/plugins.html#sec:subprojects_plugins_dslKotlin插件已加载到以下项目中:':expo-av',':react-native-agora'
任务:展示权限:编译DebugKotlin失败

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.2/userguide/command_line_interface.html#sec:command_line_warnings
175 actionable tasks: 2 executed, 173 up-to-date
e: /Users/development/Projects/myapp/node_modules/react-native-unimodules/node_modules/expo-permissions/android/src/main/java/expo/modules/permissions/requesters/BackgroundLocationRequester.kt: (12, 50): Unresolved reference: R
e: /Users/development/Projects/myapp/node_modules/react-native-unimodules/node_modules/expo-permissions/android/src/main/java/expo/modules/permissions/requesters/BackgroundLocationRequester.kt: (19, 52): Unresolved reference: R
e: /Users/development/Projects/myapp/node_modules/react-native-unimodules/node_modules/expo-permissions/android/src/main/java/expo/modules/permissions/requesters/BackgroundLocationRequester.kt: (40, 36): Unresolved reference: R

失败:生成失败,出现异常.

  • 问题:执行任务“:expo权限:compileDebugKotlin”失败。

编译错误。有关详细信息,请参阅日志

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获取更多日志输出。使用--scan运行以获取完整信息。
  • 请访问https://help.gradle.org获取更多帮助

构建在17秒内失败

error Failed to install the app. Make sure you have the Android development environment set up: https://reactnative.dev/docs/environment-setup.
Error: Command failed: ./gradlew app:installDebug -PreactNativeDevServerPort=8081
e: /Users/development/Projects/myapp/node_modules/react-native-unimodules/node_modules/expo-permissions/android/src/main/java/expo/modules/permissions/requesters/BackgroundLocationRequester.kt: (12, 50): Unresolved reference: R
e: /Users/development/Projects/myapp/node_modules/react-native-unimodules/node_modules/expo-permissions/android/src/main/java/expo/modules/permissions/requesters/BackgroundLocationRequester.kt: (19, 52): Unresolved reference: R
e: /Users/development/Projects/myapp/node_modules/react-native-unimodules/node_modules/expo-permissions/android/src/main/java/expo/modules/permissions/requesters/BackgroundLocationRequester.kt: (40, 36): Unresolved reference: R

失败:生成失败,出现异常.

  • 问题:执行任务“:expo权限:compileDebugKotlin”失败。

编译错误。有关详细信息,请参阅日志

kninwzqo

kninwzqo1#

我的想法是这是一个版本控制问题。我通过改变buildTools,compileSdk和targetSdk的版本来解决这个问题。
转到android/build.gradle文件并更改以下值:
buildToolsVersion = "29.0.3"buildToolsVersion = "30.0.0"
compileSdkVersion = 29compileSdkVersion = 30
targetSdkVersion = 29targetSdkVersion = 30
这确实为我节省了几个小时的压力。让我知道这对你是否有效。

编辑:我正在编辑这个答案,希望它能经得起未来的考验。每当出现这个错误时,请检查buildToolsVersioncompileSdkVersiontargetSdkVersion是否使用了最新版本。这也意味着您需要确保您的Android SDK、Gradle或Android Studio是最新的。
注意:如果您使用npx命令在最新的Android Studio上创建了react-native项目,则可能不需要指定buildToolsVersion。例如,在编辑此答案时,buildToolsVersion位于30.0.2上,而我的项目使用的是30.0.0。在构建期间,Android Studio忽略了我设置的版本,并使用了最新版本。

4uqofj5v

4uqofj5v2#

旧RN版本中报告了一个新问题。以下是问题和解决方案:https://github.com/facebook/react-native/issues/35210

k4aesqcs

k4aesqcs3#

我也遇到过类似的问题。我的解决方案是打开文件。/android/app/gradle/gradle-wrapper.properties然后我将distributionUrl更改为

distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip

/android/built.gradle中创建的文件系统

dependencies {
    classpath("com.android.tools.build:gradle:4.2.0")
xam8gpfp

xam8gpfp4#

如果你使用“npx”创建了一个项目,从package.json中删除“expo”依赖项。

yks3o0rb

yks3o0rb5#

我得到了稍微不同错误消息,

What went wrong: Execution failed for task ':expo-permissions:compileDebugKotlin'.

在将/android/build.gradle的kotlinVersion与android studio的kotlin版本进行匹配后,它就可以正常工作了。

相关问题