Приложение с ошибкой выполнения: processDebugResources Android Studio


124

Я использую bitbucket, поэтому могу работать с другим разработчиком, но кажется, что мы не можем заставить его работать безупречно. Я получил эту ошибку после получения от него изменений:

Execution failed for task ':app:processDebugResources'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    E:\Program Files (x86)\Android\android-sdk\build-tools\19.0.0\aapt.exe package -f --no-crunch -I E:\Program Files (x86)\Android\android-sdk\platforms\android-19\android.jar -M E:\Documents\smart-my-job1\app\build\manifests\debug\AndroidManifest.xml -S E:\Documents\smart-my-job1\app\build\res\all\debug -A E:\Documents\smart-my-job1\app\build\assets\debug -m -J E:\Documents\smart-my-job1\app\build\source\r\debug -F E:\Documents\smart-my-job1\app\build\libs\app-debug.ap_ --debug-mode --custom-package com.smartmyjob
Error Code:
    -1073741819

1
У меня была эта проблема, и оказалось, что у меня было исключительно длинное имя файла в папке с ресурсами.
Джек,

А также, если в именах файлов или изображений есть неанглийские символы, у вас будет такая же проблема. Я обнаружил сегодня.
Fuat

Ответы:


108

Мне помогло сменить версию buildTools на:

buildToolsVersion "21.0.1"

Вы найдете эту настройку внутри файла app/build.gradle.


1
имеет ли это изменение побочных эффектов для реального проекта?
совершиландроидер

11
Благодаря этому парню, если вы все еще запутались, посмотрите в загруженный диспетчер sdk и посмотрите, какая последняя версия Android SDK build-Tools. Затем измените свой файл сборки gradle на эту версию, теперь у меня 22.0.1. Мы уже
привыкли

2
Я новичок в Android Studio, как это сделать?
Шахид Карими

@MarthaJames Вы найдете настройку внутри файла app/build.gradle.
Александр Сурафель

3
У меня последняя версия buildToolsVersion "23.0.1". проблема все еще существует
Тушар Бэнн

41

Вы столкнулись с ошибкой https://code.google.com/p/android/issues/detail?id=42752 . Причиной обычно является ссылка на несуществующую строку в одном из ресурсов меню.


У dimenString types not allowed (at 'navigation_drawer_width' with value '320p'
меня

1
Спасибо @Scott, чтобы быть более конкретным, R.java получает ошибку из-за неправильного имени ресурса, поэтому показывает ошибку.
Лалит Шарма

В моем случае я добавил апостроф (ы) к строке в файле string.xml. После удаления все заработало. Это так раздражает, что IDE не может правильно отображать ошибку, скорее, все ресурсы не синхронизированы ..
MobileEvangelist

Ударьте ту же проблему с определением <string name="">в моем strings.xmlфайле. Удвойте, что ваш strings.xmlфайл действителен!
MatsLindh

Я получил эту ошибку, когда запустил команду "gradle clean build --stacktrace --debug" из-за отсутствия файлов значков. Спасибо
Дэвид Тао

39

Для меня это было то, что я забыл установить 32-битные зависимости:

sudo apt-get install -y lib32gcc1 libc6-i386 lib32z1 lib32stdc++6
sudo apt-get install -y lib32ncurses5 lib32gomp1 lib32z1-dev lib32bz2-dev

2
У меня было много проблем со сборкой простого APK в среде Ubuntu с образцом myApp Ionic в Android, установка этих недостающих зависимостей устранила мои проблемы!
JLavoie

В какую папку вы их установили: в папку проекта или в системную папку Android?
Azurespot

Этот вопрос не касается - «apt-get» устанавливает пакеты в систему.
dirkk0 05

15

aapt 32-битный, поэтому не будет выполняться в 64-битном блоке, пока не будет включена 32-битная архитектура

dpkg --print-foreign-architectures  #  if prints nothing then below is fix

sudo dpkg --add-architecture i386  #  add a 32 bit architecture to box

sudo apt-get install -y lib32gcc1 libc6-i386 lib32z1 lib32stdc++6

sudo apt-get install -y lib32ncurses5 lib32gomp1 lib32z1-dev

это работает для меня.


4
Они необходимы для Ubuntu 16.04
Луис Ригони,

Когда вы используете Ubuntu 16.04, вы должны установить эти две зависимости
Дхарма Сай Серапу,

13

У меня была такая же проблема, и я исправил ее, выполнив ./gradlew clean build! Попробуйте, и если это не сработает, попробуйте ./gradlew --refresh-dependenciesпосле, и все будет в порядке.


12

Мой ответ может показаться слишком запоздалым, но я случайно столкнулся с той же ошибкой в ​​Android Studio после обновления SDK до API 21. Я перепробовал все решения, с которыми я столкнулся здесь, на этом сайте и https://code.google. com / p / android / issues / detail? id = 61308 . Вот как я в конечном итоге решил эту ошибку: я открыл файл приложения gradle.build и изменил его следующим образом:

android {
    compileSdkVersion 21
    buildToolsVersion "21.0.0"

    defaultConfig {
        applicationId "com.abundantideas.layoutsample"
        minSdkVersion 8
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }

к этому:

android {
    compileSdkVersion 21
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.abundantideas.layoutsample"
        minSdkVersion 8
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }

Я снизил значения buildToolsVersion и targetSdkVersion до 20, которые, как я знал, работали нормально до обновления. Похоже, в моем случае API 21 вызывал проблемы для Gradle. Надеюсь, это поможет и другим.


7

В моем случае я очистил проект (Menubar -> Build -> Clean Project), а затем снова выполнил сборку. Это сработало.


4

В моем случае у меня было два объявления

<?xml version="1.0" encoding="utf-8"?>

в моем векторном значке

все, что мне нужно было сделать, это удалить один


3

В моем случае проблема решена с помощью отключения мгновенного запуска в Android Studio 3.1.2 Android Instant Raun Отключить


2

Я столкнулся с ошибкой выполнения приложения: processDebugResources Android Studio после обновления репозитория SDK. Я использую Android Studio 1.5.1, целевой SDK версии 23. Раньше я использовал buildToolsVersion 21.0.1, изменение buildToolsVersion на 21.1.2 решило мою проблему.

Возможно, вы захотите узнать, как мне подходит версия 21.1.2. Он был рекомендован Android Studio после успешного обновления моего SDK.

введите описание изображения здесь

После изменения buildToolsVersion на 21.1.2 (см. Настройки моей версии ниже) вам необходимо синхронизировать механизм сборки Gradle.

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "21.1.2"

    defaultConfig {
        applicationId "mm.weboffice"
        minSdkVersion 14
        targetSdkVersion 23
        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'
    compile 'com.android.support:cardview-v7:23.0.1'
    compile 'com.android.support:recyclerview-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile 'com.android.support:support-v4:23.0.1'
}

Android Studio предложит вам синхронизировать Gradle, или вы можете перейти в строку меню> Файл> Синхронизировать, чтобы запустить синхронизацию вручную. Android Studio восстановит ваш проект после синхронизации.

введите описание изображения здесь

Я знаю, что существует много проблем с базой данных и конфигурацией SDK, предлагаемое мной решение не может решить все проблемы. Но если вы столкнетесь с подобной ошибкой после обновления репозитория SDK, я надеюсь, что мой пост решит ваши проблемы. Удачи!


Это хорошо написанный ответ, но, пожалуйста, не копируйте и не вставляйте одно и то же в несколько ответов .
Энди

2

В моем случае я пытался изменить buildToolsVersionв gradle, но это не помогло мне. Моя проблема была исправлена, когда я нашел функцию drawable, которая называется example.PNG . Это должен быть example.png ; Не было сообщений о неправильном имени ресурса, но после того, как я переименовал файл, проект был построен gradle.


2

Если это не ваши инструменты сборки, проверьте свои строки, стили, атрибуты ... XML-файлы и убедитесь, что они верны. Например, строка с пустым атрибутом имени

<string name="">Test"</string>

или ранее неопределенный атрибут attr без указанного формата ( attrs.xml ):

<declare-styleable name="MediaGridView">
    <attr name="allowVideo"/>
</declare-styleable>

2

Били головой об этом 2 дня.

TL; DR - Получил эту ошибку, так как имя моего приложения содержало '-'.

Оказывается, андроид этого не позволяет. После запуска gradlew build --stacktraceв каталоге android - появилась ошибка, подразумевающая это.


2

это может помочь в сборке приложений android studio 3.2.1 gradle, это должно быть похоже

android {
    compileSdkVersion 27
    buildToolsVersion '28.0.3'
    defaultConfig {
        applicationId "com.sample.mvphelloworld"
        minSdkVersion 21
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
       implementation fileTree(dir: 'libs', include: ['*.jar'])
       compile 'com.android.support:appcompat-v7:27.1.1'
       implementation 'com.android.support.constraint:constraint-layout:1.1.3'
       testImplementation 'junit:junit:4.12'
       androidTestImplementation 'com.android.support.test:runner:1.0.2'
       androidTestImplementation 'com.android.support.test.espresso:espresso- 
       core:3.0.2'
}

От Gradle до
версии плагина 4.6 до версии 3.2.1


1

Получив эту ошибку, я сделал сборку с --info (gradle --info build). Он сообщил, что не может открыть libz.so.1 из-за неправильного ELFCLASS. Требуется 32-битная версия libz. Мне пришлось загрузить исходный код, изменить Makefile на gcc -m32 и установить 32-разрядный пакет разработки glibc (dnf install glibc-devel.i686). После создания и установки этой 32-битной библиотеки я отключил 64-битную.

Потом все прошло хорошо.


1

У меня была такая же проблема, и поскольку этот вопрос был первым в Google, я тоже добавлю свое решение. Для меня это отсутствующий formatатрибут в attrэлементе в res/values/attrs.xml.





0

В моем случае crashlytics (Fabric.io) генерировал файлы, которые в какой-то момент конфликтовали, и второй файл был автоматически сгенерирован с недопустимым именем.

Короче говоря: проверьте, нет ли у вас имен файлов с недопустимой длиной, вы должны быть предупреждены перед исходным исключением.


0

У меня возникла эта проблема после удаления журналов. Я решил это, перестроив проект.


0

перейдите на панель Gradle и запустите его, дважды щелкнув по нему в строке сообщения, он покажет вам, где ваш проект является ошибкой, например, возможно, у вас есть звук, фильм или файл или ... что он компактный в вашем проекте на google android i мне очень жаль, что мой английский действительно очень плохой


0

Вы получаете эту ошибку, когда используете ключевые слова Java в имени ваших ресурсов.


0

Была такая же проблема. Я изменил файл build.gradle внутри папки приложения с этого: compileSdkVersion 23 buildToolsVersion "23.0.2"

defaultConfig {
    applicationId "com.vastsoftware.family.farmingarea"
    minSdkVersion 11
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"

к этому:

compileSdkVersion 23 buildToolsVersion "21.0.2"

defaultConfig {
    applicationId "com.vastsoftware.family.farmingarea"
    minSdkVersion 11
    targetSdkVersion 21
    versionCode 1
    versionName "1.0"

и работал отлично! надеюсь, это сработает и для вас!



0

Для меня это была ошибка с моими ресурсами. Просто изменил ресурсы моего проекта в папке ресурсов и папке res (т.е. для Android), и он работал нормально.

Успешная сборка

Общее время: 1 мин. 10,034 сек.


0

В ваших макетах могут быть ошибки, например, android:id="@id/вместо android:id="@+id/.... По крайней мере, это было причиной моего исключения.


0

Проверьте, не была ли частично установлена ​​какая-либо платформа SDK. Если это так, переустановите его.


0

Я столкнулся с этой ошибкой при обновлении моей студии Android до 3.0.1 с 2.3. Попробовав все приведенные выше решения, я обнаружил, что проблема связана с версией инструментов сборки. Я использовал неподдерживаемую версию инструментов сборки. Я изменил свой, как показано ниже, и это сработало.

buildToolsVersion '26.0.2'

Как правило, всегда старайтесь использовать последнюю версию инструментов сборки, поддерживаемую вашей версией Gradle. Начиная с версии 3.0.0 Gradle, вам не нужно указывать версию инструментов сборки, поскольку она выбирается автоматически.

3.0.0 (октябрь 2017 г.): плагин Android для Gradle 3.0.0

С этим обновлением вам больше не нужно указывать версию для инструментов сборки - плагин по умолчанию использует минимально необходимую версию. Итак, теперь вы можете удалить свойство android.buildToolsVersion.

https://developer.android.com/studio/releases/gradle-plugin.html#3-0-0


0

Мне пришлось запустить Android Studio в режиме администратора.

Windows 10 x64

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.