【问题标题】:React Native build fail Task :app:processReleaseResources FAILED Failed to execute aaptReact Native构建失败任务:app:processReleaseResources FAILED无法执行aapt
【发布时间】:2020-02-11 20:37:34
【问题描述】:

我正在使用 assembleRelease 准备发布构建,但出现此错误。

配置项目 :app 项目 ':app' 中的配置 'compile' 已弃用。请改用“实施”。

配置项目 :rn-fetch-blob CompileOptions.bootClasspath 属性已被弃用,并计划在 Gradle 中删除 5.0。请改用 CompileOptions.bootstrapClasspath 属性。

配置项目 :react-native-onesignal 项目 ':react-native-onesignal' 中的配置 'compile' 已弃用。采用 而是“实施”。项目中的配置“testCompile” ':react-native-onesignal' 已弃用。使用'testImplementation' 而是。

配置项目 :react-native-image-crop-picker 项目 ':react-native-image-crop-picker' 中的配置 'compile' 已弃用。 请改用“实施”。

Task :app:bundleReleaseJsAndAssets 警告:转换缓存已重置。加载依赖图,完成。 bundle:编写捆绑输出 到: /Users/appfile/android/app/build/generated/assets/react/release/index.android.bundle bundle:完成编写 bundle 输出 bundle:复制 43 个资产文件 bundle: 完成复制资产

/Users/appfile/android/app/build/intermediates/manifests/full/release/AndroidManifest.xml:70:23-42: AAPT:找不到与给定名称匹配的资源(在“图标”处 值'@mipmap/ic_launcher')。 /Users/appfile/android/app/build/intermediates/manifests/full/release/AndroidManifest.xml:72:24-39: AAPT:找不到与给定名称匹配的资源(在“主题”处 值'@style/AppTheme')。 警告:字符串 'ucrop_error_input_data_is_absent' 没有默认翻译。警告:字符串 'ucrop_mutate_exception_hint' 没有 默认翻译。 /Users/appfile/android/app/build/intermediates/manifests/full/release/AndroidManifest.xml:67: 错误:错误:找不到与给定名称匹配的资源(在“图标” 值为“@mipmap/ic_launcher”)。

/Users/appfile/android/app/build/intermediates/manifests/full/release/AndroidManifest.xml:67: 错误:错误:找不到与给定名称匹配的资源(在 '主题',值为'@style/AppTheme')。

Task :app:processReleaseResources FAILED 无法执行 aapt com.android.ide.common.process.ProcessException: 无法执行 适应 在 com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:796) 在 com.android.build.gradle.tasks.ProcessAndroidResources.invokeAaptForSplit(ProcessAndroidResources.java:551) 在 com.android.build.gradle.tasks.ProcessAndroidResources.doFullTask​​Action(ProcessAndroidResources.java:285) 在 com.android.build.gradle.internal.tasks.IncrementalTask​​.taskAction(IncrementalTask​​.java:109) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:498) 在 org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73) 在 org.gradle.api.internal.project.taskfactory.IncrementalTask​​Action.doExecute(IncrementalTask​​Action.java:46) 在 org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39) 在 org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26) 在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) 在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110) 在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92) 在 org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70) 在 org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51) 在 org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62) 在 org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54) 在 org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60) 在 org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97) 在 org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87) 在 org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52) 在 org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52) 在 org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54) 在 org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43) 在 org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34) 在 org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.java:248) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199) 在 org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110) 在 org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241) 在 org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230) 在 org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123) 在 org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.java:79) 在 org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:104) 在 org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.java:98) 在 org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626) 在 org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581) 在 org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98) 在 org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63) 在 org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 在 org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55) 在 java.lang.Thread.run(Thread.java:748) 引起:java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException:执行时出错 进程/Users/zasetsu/Library/Android/sdk/build-tools/27.0.3/aapt 带参数 {package -f --no-crunch -I /Users/zasetsu/Library/Android/sdk/platforms/android-27/android.jar -M /Users/appfile/android/app/build/intermediates/manifests/full/release/AndroidManifest.xml -S /Users/appfile/android/app/build/intermediates/res/merged/release -m -J /Users/appfile/android/app/build/generated/source/r/release -F /Users/appfile/android /app/build/intermediates/res/release/resources-release.ap_ --custom-package com.gnpush.istapp -0 apk --output-text-symbols /Users/appfile/android/app/build/intermediates/symbols/release --no-version-vectors} 在 com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503) 在 com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482) 在 com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79) 在 com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:794) ... 50 更多原因:com.android.ide.common.process.ProcessException:执行时出错 进程/Users/zasetsu/Library/Android/sdk/build-tools/27.0.3/aapt 带参数 {package -f --no-crunch -I /Users/zasetsu/Library/Android/sdk/platforms/android-27/android.jar -M /Users/appfile/android/app/build/intermediates/manifests/full/release/AndroidManifest.xml -S /Users/appfile/android/app/build/intermediates/res/merged/release -m -J /Users/appfile/android/app/build/generated/source/r/release -F /Users/appfile/android /app/build/intermediates/res/release/resources-release.ap_ --custom-package com.gnpush.istapp -0 apk --output-text-symbols /Users/appfile/android/app/build/intermediates/symbols/release --no-version-vectors} 在 com.android.build.gradle.internal.process.GradleProcessResult.buildProcessException(GradleProcessResult.java:73) 在 com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:48) 在 com.android.builder.internal.aapt.AbstractProcessExecutionAapt$1.onSuccess(AbstractProcessExecutionAapt.java:78) 在 com.android.builder.internal.aapt.AbstractProcessExecutionAapt$1.onSuccess(AbstractProcessExecutionAapt.java:74) 在 com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1237) 在 com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399) 在 com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:911) 在 com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:822) 在 com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:664) 在 com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:48) 在 com.android.build.gradle.internal.process.GradleProcessExecutor$1.run(GradleProcessExecutor.java:58) 引起:org.gradle.process.internal.ExecException: Process 'command '/Users/zasetsu/Library/Android/sdk/build-tools/27.0.3/aapt'' 完成 非零退出值 1 在 org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:382) 在 com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:46) ... 9 更多

FAILURE:构建失败并出现异常。

  • 出了什么问题:任务 ':app:processReleaseResources' 执行失败。

    执行 aapt 失败

我的 build.gradle 文件;

buildscript {
    ext {
        buildToolsVersion = "27.0.3"
        minSdkVersion = 16
        compileSdkVersion = 27
        targetSdkVersion = 27
        supportLibVersion = "27.1.1"
    }
    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

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


      // ADD THIS
      maven { url 'https://maven.google.com' }

      // ADD THIS
      maven { url "https://jitpack.io" }
    }
}

task wrapper(type: Wrapper) {
    gradleVersion = '4.4'
    distributionUrl = distributionUrl.replace("bin", "all")
}


configurations.all {
    resolutionStrategy {
        force 'com.android.support:support-v4:27.1.0'
    }
}

【问题讨论】:

    标签: android react-native gradle


    【解决方案1】:

    您检查过您的资产吗? 一条错误消息谈到错过的图标ic_launcheric_launcher 是 Android 上的图标应用 检查您的 Android 应用的 res 中是否有 mipmapfolders 和 ic_launcher 文件,如下图所示:

    另一个关于找不到主题的错误: 应用主题。

    您需要在应用程序的res 文件夹的values 文件夹中有一个styles.xml 文件,如以下屏幕截图所示:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-01
      • 1970-01-01
      相关资源
      最近更新 更多