Ошибка компиляции ресурсов Android в 3.3.0-alpha02

Всякий раз, когда я пытаюсь собрать свой проект, я получаю такую ​​ошибку:

Android resource compilation failed
Output:  
C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:497: error: :listItem>.
C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:498: error: :listItem>.
C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:499: error: :listItem>.
C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:503: error: :listItem>.
C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:504: error: :listItem>.

Command: C:\Users\smart\.gradle\caches\transforms-1\files-1.1\aapt2-3.3.0-alpha02-4818971-windows.jar\a281fb5dd58b50951126c2252f73d452\aapt2-3.3.0-alpha02-4818971-windows\aapt2.exe compile --legacy \
    -o \
    C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\res\merged\debug \
    C:\Users\smart\AndroidStudioProjects\ShoppingList\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml
Daemon:  AAPT2 aapt2-3.3.0-alpha02-4818971-windows Daemon #2

Рассматриваемые строки xml:

<color name = "colorPrimary">#d50000</color>
<color name = "colorPrimaryDark">#b71c1c</color>
<color name = "colorAccent">#757575</color>

<listItem name = "windowActionBar">false</listItem>
<listItem name = "windowNoTitle">true</listItem>

я использую

classpath 'com.android.tools.build:gradle:3.3.0-alpha02'

И мой файл градиента приложения:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "com.my.kellen.shoppinglist"
        minSdkVersion 14
        targetSdkVersion 26
        versionCode 2
        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'])
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.2'
    implementation 'com.android.support:design:26.1.0'

implementation 'com.google.firebase:firebase-database:16.0.1'
implementation 'com.google.firebase:firebase-auth:16.0.2'
implementation 'com.google.firebase:firebase-core:16.0.1'

implementation 'com.bignerdranch.android:expandablerecyclerview:1.0.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'

// Room components
implementation "android.arch.persistence.room:runtime:1.1.1"
annotationProcessor "android.arch.persistence.room:compiler:1.1.1"
androidTestImplementation "android.arch.persistence.room:testing:1.1.1"

// Lifecycle components
implementation "android.arch.lifecycle:extensions:1.1.1"
annotationProcessor "android.arch.lifecycle:compiler:1.1.1"
}

apply plugin: 'com.google.gms.google-services'

Может кто-нибудь мне помочь? Я пробовал очистить и перестроить проект и проверил все рассматриваемые строки. Я даже не менял их в последнее время, так что я не уверен, что происходит.

РЕДАКТИРОВАТЬ - Я вернул свой classpath на 3.1.3, а distributionUrl на 4.5, и теперь я получаю другое сообщение об ошибке:

Error: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details.

В журнале написано:

error: :listItem>.
Message{kind=ERROR, text=error: :listItem>., sources=`[C:\Users\smart\AndroidStudioProjects\ShoppingList\app\src\main\res\values\styles.xml:17:5-90], original message=, tool name=Optional.of(AAPT)}` 

И указывает на две разные строки xml, которые должны быть действительными:

<style name = "AppTheme.AppBarOverlay" parent = "ThemeOverlay.AppCompat.Dark.ActionBar"/> 
<style name = "AppTheme.PopupOverlay" parent = "ThemeOverlay.AppCompat.Light"/>
6
0
22 910
4

Ответы 4

почему бы не изменить версию плагина Gradle?

Во-первых: выясните, сколько локальных градиентов доступно, просмотрев ваш файл gradle, 'file' -> 'setting' -> 'Build, Execuion, Deployment' -> 'Gradle', тогда вы найдете этот файл, который содержит файл с именем 'wrapper \ dists ', откройте и вы их увидите.

Во-вторых: отредактируйте файл с именем gradle-wrapper.properties и измените значение distributionUrl на версию, которая включена в вашу локальную группу gradle.

И последнее: замените classpath в вашем build.gradle, есть ссылка на сайт, от которого вы можете получить помощь.

Помогите вам понять мой плохой английский, чтобы я мог вам помочь :)

Я вернул свой путь к классам на 3.1.3, а distributionUrl на 4.5, и получаю другое сообщение об ошибке: Error: java.util.concurrent.ExecutionException: com.android.builder.internal.aapt.v2.Aapt2Exception: AAPT2 error: check logs for details. Журнал указывает на разные строки xml: <style name = "AppTheme.AppBarOverlay" parent = "ThemeOverlay.AppCompat.Dark.ActionBar"/> <style name = "AppTheme.PopupOverlay" parent = "ThemeOverlay.AppCompat.Light"/>

Kellen Hartnett 06.07.2018 18:49

есть ли еще такое исключение, если поменять свой style?

jiar wang 09.07.2018 03:27

Я не понимаю, почему, но это работает для моего проекта. например, проблема, я получаю ошибку шва, как и ваш. я исправляю их вот так : ищу место ошибки

Android resource compilation failed
Output:  F:\Works\AndroidProject\lbw\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:1703: error: duplicate value for resource 'attr/progress' with config ''.
F:\Works\AndroidProject\lbw\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:1703: error: resource previously defined here.

Command: C:\Users\Administrator\.gradle\caches\transforms-1\files-1.1\aapt2-3.2.1-4818971-windows.jar\802c7c840816e44cd175d342954a2954\aapt2-3.2.1-4818971-windows\aapt2.exe compile --legacy \
        -o \
        F:\Works\AndroidProject\lbw\app\build\intermediates\res\merged\debug \
        F:\Works\AndroidProject\lbw\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml
Daemon:  AAPT2 aapt2-3.2.1-4818971-windows Daemon #0

затем я ищу файл

F:\Works\AndroidProject\lbw\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml

и я нахожу местоположение в строке 1703 введите описание изображения здесь

и я нахожу место ошибки в файле введите описание изображения здесь

и я копирую имя absProgressBar search в attrs, тогда я получаю местоположение ошибки введите описание изображения здесь

чем я комментирую <!-- <attr name = "progress" format = "integer" />--> build argen, ошибка исчезнет.

У меня было что-то подобное, где не удалось выполнить компиляцию ресурса Android.

error: <item> inner element must either be a resource reference or empty.

Я вижу несколько сообщений, в которых предлагается удалить файл «ids.xml», и это решает проблему. Хотя это может исправить это, вы можете причинить больше вреда, поскольку код может ссылаться на этот тег id.

Я исправил свою проблему, обновив файл "ids.xml" с:

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

К:

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

Обратите внимание, что тег Item теперь является самозакрывающимся xml-элементом. Это правильный способ перечислить идентификаторы в файле "ids.xml". Вы также можете обратиться к официальному Android документация для этого.

Ваше здоровье!

Когда я обновляю студию Android, возникает ошибка «Ошибка компиляции ресурсов Android».

Я ищу везде, но не могу найти решение, поэтому я удалил три строки в values.xml

<item type = "id" name = "id_name" />
<item name = "omfm_main_label_id" type = "id">OMFMLabelId</item>
<item name = "omfm_tag" type = "id">OMFMTag</item> 

так это сработало. примечание: вся библиотека в build.gradle должна быть обновлена.

values.xml? Где это?

Dyno Cris 19.04.2019 01:33

Другие вопросы по теме