【问题标题】:how to fix 23.0.1\aapt.exe'' finished with non-zero exit value 1如何修复 23.0.1\aapt.exe'' 以非零退出值 1 结束
【发布时间】:2015-09-30 18:32:55
【问题描述】:

突然间我无法让 Gradle 在 Android Studio 下构建任何项目。

错误:任务 ':app:processDebugResources' 执行失败。 com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException:进程'命令 '\Local\Android\sdk\build-tools\23.0.0\aapt.exe'' 完成 非零退出值 1

我的 Gradle 是

apply plugin: 'com.android.application'

android {
    compileSdkVersion 22
    buildToolsVersion "23.0.0"

    defaultConfig {
        applicationId "com.marathon.simplelist"
        minSdkVersion 8
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.0.1'
}

即使我创建了一个新的空白活动项目,我仍然会收到此错误。

我已经安装了 Android Studio 1.3.1

SDK 平台:5.X、5.1、5.0、4.4、2.3.3 SDK 工具:SDK Build Tools、SDK Tools 24.4、Platform-Tools 23.0.1

很明显,有些东西是在本地重新配置的,因为即使是新的空项目也不会构建。关于如何解决这个问题的想法?

【问题讨论】:

  • 尝试设置compileSdkVersion 23
  • 那行得通。谢谢!!!

标签: android


【解决方案1】:

首先尝试从 Build 菜单清理和重建您的项目。

第 1 步:转到 构建 -> 清理项目

第 2 步:转到 构建 -> 重建项目

这应该可以解决您的问题。

否则尝试从 SDK 管理器更新 Android SDK 构建工具并修改您的 build.gradle 以使用最新的 buildToolsVersion,即“23.0.2”现在

【讨论】:

    【解决方案2】:

    查看 gradle 控制台输出,

    在我的情况下 - :app:processDemoReleaseResources FAILED

    它是资产文件夹中的西里尔文件名

    【讨论】:

    • 是的,我也有同样的问题..它解决了..!! 检查资产文件夹中的文件名..!
    • 从数小时的计算中拯救了我的生命
    【解决方案3】:

    如果有人在使用react-native(并且最近更新了它的版本)并且遇到了这个问题:

    引用@chamchamgo:

    我发现根本原因是旧版本的打包器收集 资源(图像等)并放在 $(rn_project)\android\app\src\main\res,而较新的版本把它们 在下面 $(rn_project)\android\app\build\intermediates\res\merged\$(buildType)。 它带来重复导致任务失败 'processReleaseResources'。它也解释了为什么新创建 项目运作良好。当你有一个旧的 RN 项目升级到新项目时 版本,只删除像'drawable-xxxx'这样的目录(ATTN:no 'v?' postfix) 在 $(rn_project)\android\app\src\main\res 和 wolrd 下 做个好人。

    在以下位置检查整个线程: https://github.com/facebook/react-native/issues/5787#issuecomment-236408669

    【讨论】:

      【解决方案4】:

      在 Gradle 脚本下转到 gradle.properties
      然后设置android.enableAapt2=true
      清理并重建项目

      【讨论】:

        【解决方案5】:

        我也遇到了同样的问题,为此工作了几个小时,终于找到了解决方案。 我在 xml 中引用的可绘制文件不存在。我删除了代码并重建了项目。有效。 我的建议是,如果有人遇到此类问题,请查看您的 res 文件夹。

        【讨论】:

        • 感谢您的帮助,您的建议为我节省了很多时间
        【解决方案6】:

        您可能会错过一些资源。

        您可以使用以下步骤找到确切的问题

        1. 点击 -> gradle(右侧)

        2. 转到应用程序-> 任务-> 构建-> assembleDebug

        3. 双击assembleDebug

        您将得到确切的错误。你可以解决你的问题

        【讨论】:

          【解决方案7】:

          在我的情况下,我在布局文件中使用了错误的字符串资源 ID。在我修复它并重建项目后,错误消失了。希望这会有所帮助!

          【讨论】:

          • 嗨,我今天刚刚登录,看到显然我对这个答案投了反对票。我没有——至少是不知情的!显然,它无法撤消 - 我已经寻求支持。所以 errrr 对此感到抱歉。
          【解决方案8】:

          当您删除任何资源作为图像时发生此错误,android studio 会在任何文件中使用此错误

          解决办法

          构建 -> 清理项目 构建 -> 重建项目

          祝你好运

          【讨论】:

            【解决方案9】:

            现在回答可能有点晚了,但我没有找到完美的答案,所以这里对我有用:

            • 确保 /res/ 中的所有文件/字段均正确无误。

            我在 attrs > declareStylable 中重命名了几个字段,因此它们指向不存在的枚举,这就是导致我出错的原因。

            【讨论】:

            • 是的,我遇到了同样的问题。在两个模块中,我有重复的属性。
            【解决方案10】:

            如果在 Gradle 处理资源时发生错误,则很可能是您的资源存在问题。检查您的 gradle 控制台以确保。

            仔细检查您最近对res 文件夹所做的任何更改。 在我的例子中,我只是重命名了一个资源banner.pngsomething_else_banner.png,因为必须保留 banner.png),然后它就起作用了!

            我尝试过的其他失败的事情:

            • 基于mixelanswer,我尝试对我的png 进行pngcrush 和optipng,这让我相信这可能是我的资源问题,因为Gradle 控制台显示错误发生在:app:processDebugResources FAILED 期间。
            • 构建 -> 清理项目构建 -> 重建项目失败

            【讨论】:

              【解决方案11】:

              就我而言: 我创建了新的cordova项目,然后在android studio中关闭, 然后我只是将 SDK Build Tools 更新到 23.0.3 最新版本。 确保您已在 android 默认的 'sdk/build-tools' 文件夹中安装了 MinSdkVersion 和 targetSdkVersion

              【讨论】:

                【解决方案12】:

                Android studio 只接受特定文件名框架内的图片

                文件名无效:只能包含 [a-z0-9_.]

                我有一个韩国人的文件。所以我删除然后它工作了!!!

                【讨论】:

                  【解决方案13】:

                  始终尝试使用最新的构建工具。您必须更改 build.gradle 文件中的 buildToolsVersion "XX.XX" 行(通常位于 gradle 的 mobile 目录下2.0) 到最新版本:23.0.224.0.225.0.2(在我的情况下)。然后重建项目。如果还是有问题,请尝试通过Android SDK Manager更新对应的构建工具。

                  【讨论】:

                    【解决方案14】:

                    将您的 buildToolsVersion 升级到最新版本,并确保您的 appcompactv7 导入与 sdk buildtoolversion 匹配。就我而言,它是 buildToolsVersion '26.0.0'。升级到它解决了我的问题。

                    【讨论】:

                      【解决方案15】:

                      我也遇到了同样的问题。解决方案是将项目文件夹移动到驱动器根文件夹中。 看起来我的项目文件夹有很大的路径(“D:\DropBox\Dropbox\Video\Full Stack Web Development\Course 4 - Multiplatform Mobile App Development with Web Technologies\Week 3 - Deploying your App\Exercise 1\ionic\conFusion\ ”)。 将“Exercise 1”文件夹移动到D盘根目录后,问题就消失了。

                      【讨论】:

                        【解决方案16】:

                        将 buildToolsVersion 更改为 compileSdkVersion 如下代码所示:...

                        之前:它不工作......

                        android {
                            compileSdkVersion 23
                            buildToolsVersion '22.0.1'
                            defaultConfig {
                                applicationId 'com.kdmsl.kraapp'
                                minSdkVersion 14
                                versionCode 3
                                versionName "1.3"
                                aaptOptions {
                                    additionalParameters "--no-version-vectors"
                                }
                            }
                        

                        改动后:

                        android {
                            compileSdkVersion 23
                            buildToolsVersion '23.0.0'
                            defaultConfig {
                                applicationId 'com.kdmsl.kraapp'
                                minSdkVersion 14
                                versionCode 3
                                versionName "1.3"
                                aaptOptions {
                                    additionalParameters "--no-version-vectors"
                                }
                            }
                        

                        【讨论】:

                          【解决方案17】:

                          大多数情况下,这个问题是由 xml 文件中的错误资源引起的,我建议你在一切正常之前返回你的代码。然后逐步添加新代码并仔细检查xml文件。

                          【讨论】:

                            【解决方案18】:

                            在React Native中也出现同样的错误,我升级了android sdk版本导致这个。

                            根本原因:旧版本的打包器收集资源。

                            解决方法:删除$(rn_project)\android\app\src\main\re下的'drawable-xxxx'(ATTN:no 'v?' postfix)之类的目录。

                            参考:https://github.com/facebook/react-native/issues/5787#issuecomment-236408669

                            【讨论】:

                              【解决方案19】:

                              安装最新的 SDK/build-tool 对我有帮助。

                              【讨论】:

                                【解决方案20】:

                                在 gradle 文件中添加下面的库。

                                编译“com.android.support:appcompat-v7:26.0.2”
                                编译“com.android.support:support-v13:26.0.2”

                                【讨论】:

                                  【解决方案21】:

                                  我也有同样的错误: "aapt-exe-finished-with-non-zero-exit-value-1"

                                  在我的代码中,在更正后,布局 xml 文件中关于可绘制文件名的错误。它为我工作。

                                  【讨论】:

                                    【解决方案22】:

                                    就我而言,我只是将这个'android:drawableTop="2dp"'TextView 一起使用。显然,这是一个无效的引用。 遇到此问题时,恢复到上一个​​ git 版本是一个好方法。

                                    【讨论】:

                                      【解决方案23】:

                                      就我而言,我回溯了我实现的所有内容,发现问题出在我用于登录屏幕的 xml 布局文件中。

                                      我在 RelativeLayout(父布局)中定义的子视图之间的关系导致了错误。

                                      因此,将来避免此类错误的方法是在实现任何内容后立即继续运行/检查代码,以避免长时间回溯(在我的情况下)。

                                      希望这会有所帮助!

                                      【讨论】:

                                        【解决方案24】:

                                        在我的例子中,由于 xml 中的重复属性导致了这个问题。例如,

                                        <TextView
                                        android:id="@+id/tv1"
                                        android:layout_width="wrap_content"
                                        android:layout_height="wrap_content"
                                        android:text="Hello"
                                        android:text="Hello" />
                                        

                                        【讨论】:

                                          【解决方案25】:

                                          我花了将近 12 个小时才找到这个问题的解决方案,最后我找到了解决方案。

                                          这种超自然的问题,可能发生在以下几种情况,

                                          1. 当您的代码出现问题时,例如有时 IntelliJ/AndroidStudio 不会报告编译错误。打开每个类并检查是否有任何编译问题,这些编译问题将是因为无法解决少数依赖项。

                                          2. 当您有一个最新的库,但您指的是最旧的版本。(类似于第 1 点)。

                                          3. 当您有一个依赖于某个其他库的库并且该库又引用旧库时,但您的直接库引用的是较新版本。

                                          4. 从 JFrog Artifactory 导入,但您的缓存未清除,您的应用仍保留旧版本的 .aar 文件

                                          5. 您当前的应用程序 gradle 版本是最新的,但您导入了一些其他项目作为库并且该版本较旧。

                                          6. 您当前的应用程序 gradle 版本是最新的,但您从 jfrog artifactory 导入了 .aar 文件,该文件是从旧 gradle 版本构建的。

                                          当您尝试上述所有情况时,请清理并构建,或者如果这不起作用,请尝试“使缓存无效并重新启动”。

                                          这样的错误会出现在上面提到的某些或其他情况下。

                                          快乐编码..!

                                          【讨论】:

                                            【解决方案26】:

                                            在我的情况下,我在维度文件中被错误地提到 dp 作为 d。这导致了这个问题,一旦我纠正了这个值,一切正常。 所以由于一些新添加的错误值或文件可能会导致这个问题。

                                            【讨论】:

                                              【解决方案27】:

                                              我也遇到过类似的问题,通过禁用“Instant Run”选项解决了,

                                              文件>设置>构建、执行、部署>即时运行 在 Instant Run 选项卡下,禁用 "Enable Instant Run to hot swap code.."

                                              【讨论】:

                                                猜你喜欢
                                                • 2015-09-03
                                                • 1970-01-01
                                                • 1970-01-01
                                                • 1970-01-01
                                                • 1970-01-01
                                                • 1970-01-01
                                                • 1970-01-01
                                                • 1970-01-01
                                                • 1970-01-01
                                                相关资源
                                                最近更新 更多