Компиляция ресурсов Android не удалась в v3.2

поэтому я обновил свою Android Studio до v3.2. Когда я попытался скомпилировать проект, сборка не удалась. Ниже приведена ошибка:

Android resource compilation failed
    Output:  C:UsersAshishAndroidStudioProjectsStartUpappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvaluesvalues.xml:900: error: <item> inner element must either be a resource reference or empty.

    Command: C:UsersAshish.gradlecachestransforms-1files-1.1aapt2-3.2.0-4818971-windows.jarf1fbe9171e916e5044000cd76b749c8aapt2-3.2.0-4818971-windowsaapt2.exe compile --legacy 
            -o 
            C:UsersAshishAndroidStudioProjectsStartUpappbuildintermediatesresmergeddebug 
            C:UsersAshishAndroidStudioProjectsStartUpappbuildintermediatesincrementalmergeDebugResourcesmerged.dirvaluesvalues.xml
    Daemon:  AAPT2 aapt2-3.2.0-4818971-windows Daemon #0

пожалуйста, сообщите, если требуется дополнительная информация. Любая помощь будет оценена.

5 ответов


я столкнулся с этой проблемой сегодня после обновления gradle из 3.1.4 to 3.2.0. Я не знаю, почему, но построить started бросить это исключение. я удалил build папка, и удалил gradle caches папка, но ничего не получалось, поэтому я посмотрел на объединенную values.xml и оказывается, что мой ids.xml определял неправильный идентификатор, который был объединен с values.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <item name="downloading_package" type="id">Baixando pacote de sincronização</item>
</resources>

и, по-видимому, это работало до обновления... для моего случая я удалил ids.xml файл (он был бесполезен в проекте)

хотел бы я знать почему до обновления все работало


на <item> на values.xml в строке 900 ...может быть ресурсного типа id.

правильный синтаксис будет (так же, как сообщение об ошибке):

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <item type="id" name="id_name" />
</resources>

посмотреть документация.


Я также встречаю проблему, вам просто нужно найти, где значения, и обновить его из <item type="id" name="id_name" >id_name</item> до <item type="id" name="id_name" />,теперь все нормально.


Я заканчиваю эту проблему несколько минут назад, попробуйте изменить или удалить id.xml, если вы думаете, что у вас его нет, попробуйте найти в другом модуле вашего приложения. Я меняю свой ресурс значения с <item name="header_view" type="id">header_view</item> до <item name="header_view" type="id"/> и это сработало для меня.


в вашем build gradle (Project:name) сделайте это так

classpath 'com.android.tools.build:gradle:3.+'

затем перестройте проект .. после этого он покажет сообщение для обновления вашего gradle с 4.6 до 4.10