it-swarm.com.ru

Сбой компиляции ресурсов Android в v3.2

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

Android resource compilation failed
    Output:  C:\Users\Ashish\AndroidStudioProjects\StartUp\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:900: error: <item> inner element must either be a resource reference or empty.

    Command: C:\Users\Ashish\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.0-4818971-windows.jar\7f1fbe9171e916e5044000cd76b749c8\aapt2-3.2.0-4818971-windows\aapt2.exe compile --legacy \
            -o \
            C:\Users\Ashish\AndroidStudioProjects\StartUp\app\build\intermediates\res\merged\debug \
            C:\Users\Ashish\AndroidStudioProjects\StartUp\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml
    Daemon:  AAPT2 aapt2-3.2.0-4818971-windows Daemon #0

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

16
Ashish Yadav

Я столкнулся с этой проблемой сегодня после обновления gradle с 3.1.4 на 3.2.0. Я не знаю почему, но сборка началась чтобы выбросить это исключение. я удалил папку 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 (это было бесполезно в проекте)

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

13
Gabriel De Oliveira Rohden

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

2
Arie Ridwan

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

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

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

см. документацию .

2
Martin Zeitler

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

1
alei long

в своем билде gradle (Project: name) сделай так

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

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

0
Tariq K Alsaidi

В моем случае 

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

повторяется дважды в XML. Убедитесь, что он должен быть один на файл в верхней части XML.

0
Shylendra Madda