【问题标题】:React Native: "A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade"React Native:“执行 com.android.build.gradle.internal.tasks.Workers$ActionFacade 时发生故障”
【发布时间】:2020-11-04 08:11:29
【问题描述】:

我创建了一个新的 react native 项目并运行了react-native run-android

但是,我收到此错误:

A failure occurred while executing com.android.build.gradle.internal.tasks.Workers$ActionFacade

这是屏幕截图:

这是我的android/build.gradle

 // Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    ext {
        buildToolsVersion = "29.0.2"
        minSdkVersion = 16
        compileSdkVersion = 29
        targetSdkVersion = 29
    }
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath("com.android.tools.build:gradle:3.5.3")
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        mavenLocal()
        maven {
            // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
            url("$rootDir/../node_modules/react-native/android")
        }
        maven {
            // Android JSC is installed from npm
            url("$rootDir/../node_modules/jsc-android/dist")
        }

        google()
        jcenter()
        maven { url 'https://www.jitpack.io' }
    }
}

我是 react native 的新手,这是一个新项目,因此我们将不胜感激。

【问题讨论】:

  • @Hend El-Sahli 显然没有任何解决方案有帮助,我仍然收到错误。
  • 您是否仅在此特定项目中遇到此问题?我的意思是尝试创建一个新项目,看看它是否与您的 RN 安装有关
  • 是的,我创建了另一个新的 React Native 项目并遇到了同样的问题。起初它说它缺少android.jar 我手动添加到它的指定文件夹。之后我得到了我在这里发布的这个问题。
  • 那么这是一个安装问题...我想通过复制丢失的android.jar文件这不是解决此问题的最佳方法...错误表明您没有安装 Android API ...或部分安装 ...从您的 Android-Studio > Configure > Sdk Manager --> 检查已安装的 api-levels 并确保已安装 API Level-29 .. . 并确保已安装 buildToolsVersion = "29.0.2 或将 buildToolsVersion 设置为您设备中安装的版本

标签: react-native gradle


【解决方案1】:

解决方案-1:问题已通过删除并重新创建 AVD(Android 虚拟设备)文件得到解决。可以从 Android Studio 中删除 AVD。一般保存在C:\Users\<userName>\.android\avd

很可能,您还需要执行以下命令。

cd <project_filder> 
cd android
gradlew clean

如果您没有注意到问题中的 cmets(上图),请查看它们。它们包含更多可能与问题相关的建议。

第一次更新:

Solution-2:在其他一些情况下,除了删除和重新创建 AVD 之外,我还必须执行以下步骤。

REM 1. Removing cache files
rd %localappdata%\Temp\metro-cache /s /q 
del %localappdata%\Temp\haste-map*

REM 2. Cleaning Gradle files
cd <project_filder> 
cd android & gradlew clean & cd .. 

REM 3. Deleting node_modules
rd node_modules /q /s 

REM 4. Cleaning npm cache
npm cache clean --force 

REM 5. Re-installing npm modules
npm install

第二次更新:

Solution-3:在第三种情况下,我必须在文件&lt;proj-folder&gt;/android/gradle.properties中添加以下行

org.gradle.jvmargs=-Xmx4608m

【讨论】:

    【解决方案2】:

    值得注意的是,我在原生 (Kotlin) Android 项目中遇到了这种情况。 对我来说,这是由于在我的resConfigs 中指定了密度:

    build.grade (:app)
    
    developLint {
        dimension "version"
        resConfigs "en",  "he-rIL", "iw-rIL", "xxhdpi"
    }
    

    (注意上面的"xxhdpi"

    去除密度解决了这个问题。

    【讨论】:

      猜你喜欢
      • 2022-10-22
      • 1970-01-01
      • 2021-01-30
      • 2021-04-14
      • 2020-07-05
      • 2021-05-19
      • 2020-06-06
      • 2021-04-27
      • 2020-01-24
      相关资源
      最近更新 更多