Дублируемое значение ресурса 'attr/font' с конфигурацией "

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

Ошибка Msg: /Users/hyun/.gradle/caches/transforms-1/files-1.1/appcompat-v7-27.0.1.arr/25699caf34fef6313d6ec32013a1a117f/res/values/values.xml error: дублирующее значение для ресурса 'attr/font' с конфигурацией. error: ресурс, ранее определенный здесь

/Users/hyun/Desktop/Laftel-Android/app/build/intermediates/incremental/mergeDbugResources/merged.dir/values/values.xml дублирующее значение для ресурса 'attr/font' с конфигурацией. ресурс, ранее определенный здесь.

Java.util.concurrent.ExecutionException: com.android.tools.appt2.Aapt2Exception: ошибка AAPT2: проверьте подробности Выполнение не выполнено для задачи: app:: mergeDebugResources. Ошибка: java.utilconcurrentExcutionException: com.android.tools.aapt2.Aapt2Exception: ошибка AAPT2: подробнее проверьте журналы

+29
06 дек. '17 в 6:54
источник поделиться
6 ответов

support library 26 добавлен атрибут шрифта к элементам xml, таким как TextView и т.д. В моем случае я использовал библиотеку с пользовательскими представлениями и пользовательский атрибут app: font, чтобы они столкнулись. После переименования атрибута библиотеки на что-то еще (textFont) все прошло хорошо. Итак, вы где-то используете собственный атрибут "font"? Вы недавно обновили gradle для поддержки библиотеки 26 или 27? Если вы не можете переопределить имя атрибута, попробуйте вернуться к 25

+33
11 дек. '17 в 12:54
источник

Возможно, концепция противоречит логике, которую мы ранее использовали для применения пользовательских шрифтов.

предварительно

Мы использовали приведенный ниже код для создания пользовательского атрибута для шрифта.

    <declare-styleable name="CustomFont">
        <attr name="font" format="string" />
    </declare-styleable>

Что я меняю

В моем случае это была проблема, и я решил ее, переименовав имя attr

    <declare-styleable name="CustomFont">
        <attr name="fontName" format="string" />
    </declare-styleable>

То же самое может применяться, если вы используете какую-либо стороннюю библиотеку или пользовательский вид со свойством "шрифта"

Согласно предложению reverie_ss, пожалуйста, проверьте ваши res-> значения-> attrs.xml

+28
11 апр. '18 в 12:56
источник

Связанные вопросы


Похожие вопросы

После перехода на AndroidX мое сообщение об ошибке было

error: duplicate value for resource 'attr/progress' with config ''

и у меня был пользовательский атрибут, определенный для пользовательского представления следующим образом:

<declare-styleable name="ProductionProgressItemView">
    <attr name="progressTitle" format="string"/>
    <attr name="progress" format="string"/>
    <attr name="progressPercent" format="integer"/>

переименование прогресса в progressValue исправил проблему.

+10
13 нояб. '18 в 10:22
источник

Я использую вспомогательную библиотеку 27.1.1, и определенно targetSDKVersion равен 27. В моем случае возник конфликт с другой библиотекой. Это был сервис Google Play, который также добавляет вспомогательную библиотеку, но со старой версией, поэтому есть две библиотеки, которые создают проблему.

Добавьте это в файл build.gradle уровня проекта

task clean(type: Delete) {
delete rootProject.buildDir
}

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.android.support'
                    && !details.requested.name.contains('multidex') ) {
                details.useVersion "26.1.0"
            }
        }
    }
}

Я нашел эту ссылку здесь

+1
26 июл. '18 в 23:27
источник

попробуйте compileSdkVersion 25, тогда все будет хорошо. поддержка библиотеки 26 добавила атрибут шрифта к элементам xml, таким как TextView и т.д., поэтому, если вы хотите использовать sdkversion 26, вам нужно переименовать атрибут библиотеки во что-то другое (textFont), все снова пошло хорошо

+1
28 июл. '18 в 19:45
источник

Если вы переходите на androidx, попробуйте поместить приведенный ниже код в gradle.properties, если этот файл не существует в каталоге вашего проекта, создайте его и вставьте следующие строки. Это решено

Duplicate value for resource 'attr/.*' with config ''

ошибка в моем случае

android.enableJetifier=true
android.useAndroidX=true
-1
05 мар. '19 в 9:49
источник

Посмотрите другие вопросы по меткам или Задайте вопрос