如何修复23.0.1 \ aapt.exe''以非零退出值1

时间:2015-09-30 18:32:55

标签: android

突然之间,我无法让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'
}

即使我创建了一个新的Blank Activity项目,我仍然会收到此错误。

我安装了

的Android Studio 1.3.1

SDK平台:5.X,5.1,5.0,4.4,2.3.3 SDK工具:SDK构建工具,SDK工具24.4,Platform-Tools 23.0.1

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

27 个答案:

答案 0 :(得分:23)

首先尝试从Build菜单中清理并重建项目。

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

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

这可以解决您的问题。

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

答案 1 :(得分:9)

请参阅gradle控制台输出,

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

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

答案 2 :(得分:5)

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

引用@chamchamgo:

  

我发现根本原因是老版本的打包器收集   资源(图像等)并放入   $(rn_project)\ android \ app \ src \ main \ res,而较新的版本放置它们   下   $(rn_project)\机器人\程序\编译\中间体\水库\合并\ $(buildType)。   它带来重复,导致任务失败   ' processReleaseResources&#39 ;.它也解释了新创造的原因   项目运作良好。当您有一个旧的RN项目升级到更新   版本,只需删除' drawable-xxxx'等目录。 (ATTN:没有' v?'   postfix)在$(rn_project)\ android \ app \ src \ main \ res和wolrd下   很好。

检查整个帖子: https://github.com/facebook/react-native/issues/5787#issuecomment-236408669

答案 3 :(得分:2)

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

答案 4 :(得分:1)

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

答案 5 :(得分:1)

将buildToolsVersion升级到最新版本,并确保您的appcompactv7导入与sdk buildtoolversion匹配。在我的例子中,它是buildToolsVersion '26 .0.0'。升级到它解决了我的问题。

答案 6 :(得分:1)

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

文件名无效:必须仅包含[a-z0-9 _。]

我有韩文的文件。所以我删除然后它工作!!!

答案 7 :(得分:1)

在我的情况下: 我创建了新的cordova项目,然后在android studio中关闭 然后我只是将SDK Build Tools更新到23.0.3最新版本。 确保你已经安装了MinSdkVersion& android默认' sdk / build-tools'中的targetSdkVersion夹

答案 8 :(得分:1)

如果在Gradle Processes Resources时出现错误,那么很可能是您的资源出现问题。检查您的gradle控制台以确保。

仔细检查您最近对res文件夹所做的任何更改。 在我的情况下,我只是重命名了一个资源banner.pngsomething_else_banner.png,因为banner.png必须保留),并且它有效!

我试过的其他事情都失败了:

  • 基于answer mixel,我试图通过pngcrush和optipng我的png让我相信它可能是我资源的问题,因为Gradle控制台显示错误发生在:app:processDebugResources FAILED
  • 构建 - >清洁项目构建 - >重建项目失败

答案 9 :(得分:1)

回答可能有点为时已晚,但我找不到完美答案,所以这里对我有用:

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

我在attrs中重命名了几个字段> declareStylable所以他们指向不存在的枚举,这是导致我错误的原因。

答案 10 :(得分:1)

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

解决方案

构建 - >干净的项目 构建 - >重建项目

祝你好运

答案 11 :(得分:1)

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

答案 12 :(得分:0)

我花了将近12个小时来找到解决此问题的方法,终于找到了解决方法。

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

  1. 当您的代码有问题时,例如IntelliJ / AndroidStudio有时不报告编译错误。打开每个类并检查是否有编译问题,这些编译问题是由于无法解决少数依赖关系而引起的。

  2. 当您拥有的是最新的库但您所引用的是最旧的版本时(类似于第1点)。

  3. 当您拥有一个依赖于某些其他库的库,而该库又引用了旧库,但是直接库引用的是新版本。

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

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

  6. 您当前的gradle版本是该应用程序的最新版本,但您是从jfrog人工制品导入的.aar文件,它是从较早的gradle版本构建的。

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

像这样的

错误会在上述某些或其他情况下发生。

快乐编码..!

答案 13 :(得分:0)

就我而言,由于xml中的属性重复导致了此问题。例如,

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

答案 14 :(得分:0)

您可能会错过一些资源。

您可以按照以下步骤找到确切的问题

  1. 单击-> gradle(右侧)

  2. 转到app->任务->构建-> assembleDebug

  3. 双击 assembleDebug

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

enter image description here

答案 15 :(得分:0)

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

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

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

希望这会有所帮助!

答案 16 :(得分:0)

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

答案 17 :(得分:0)

我也有同样的错误: “ aapt-exe完成的非零退出值-1”

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

答案 18 :(得分:0)

在我的情况下,我在尺寸文件中将dp误称为dp。一旦我更正了该值,一切正常就可以解决这个问题。 因此,由于某些新添加的错误值或文件可能会导致此问题。

答案 19 :(得分:0)

在gradle文件中添加下方库。

  

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

答案 20 :(得分:0)

安装最新的SDK / build-tool可以帮助我。

答案 21 :(得分:0)

在React Native中遇到了同样的错误。我升级了android sdk版本并导致了这个。

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

解决方案:删除&#39; drawable-xxxx&#39;等目录。 (ATNN:no&#39; v?&#39; postfix)在$(rn_project)\ android \ app \ src \ main \ re下。

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

答案 22 :(得分:0)

始终尝试使用最新版本的构建工具。您必须更改 build.gradle 文件中的buildToolsVersion &#34; XX.X.X&#34; 行(通常位于移动 gradle 2.0 中的目录)到最新版本: 23.0.2 24.0.2 25.0.2 (在我的情况下)。然后重建项目。如果您仍有问题,请尝试通过 Android SDK Manager 更新相应的构建工具。

答案 23 :(得分:0)

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

答案 24 :(得分:0)

将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"
        }
    }

答案 25 :(得分:0)

我遇到了同样的问题。解决方案是将项目文件夹移动到驱动器根文件夹中。 看起来我的项目文件夹有很大的路径(&#34; D:\ DropBox \ Dropbox \ Video \ Full Stack Web Development \ Course 4 - 使用Web技术进行多平台移动应用程序开发\第3周 - 部署你的应用程序\练习1 \离子\混乱\&#34)。 移动后#34;练习1&#34;文件夹到磁盘D的根目录,问题就消失了。

答案 26 :(得分:-1)

我也遇到了类似的问题,通过禁用“即时运行” 选项来解决此问题,

文件>设置>构建,执行,部署>即时运行 在“即时运行”选项卡下,禁用“启用对热插拔代码的即时运行。” enter image description here