原文:https://blog.csdn.net/ZDF123654/article/details/81285995
Android resource compilation failed
Output: E:\workspace\favor\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:2834: error: duplicate value for resource 'attr/layout_anchorGravity' with config ''.
E:\workspace\favor\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml:2834: error: resource previously defined here.
Command: C:\Users\Administrator\.gradle\caches\transforms-1\files-1.1\aapt2-3.3.0-alpha03-4818971-windows.jar\a1ffc6caf4b508853c09d1bf0b55ff09\aapt2-3.3.0-alpha03-4818971-windows\aapt2.exe compile --legacy \
-o \
E:\workspace\favor\app\build\intermediates\res\merged\debug \
E:\workspace\favor\app\build\intermediates\incremental\mergeDebugResources\merged.dir\values\values.xml
Daemon: AAPT2 aapt2-3.3.0-alpha03-4818971-windows Daemon #0
引入的第三方框架多了很容易到時(shí)版本沖突鸠真,總結(jié)了一下解決沖突的方案:
第一種但金,強(qiáng)制使用統(tǒng)一的版本號(hào)
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '27.1.1'
}
}
}
configurations.all直接放在app build.gradle文件下风皿,和dependencies同一級冰垄。
第二種庸诱,引入第三方支持時(shí)佑稠,去除第三方庫中support支持
例如:api("com.afollestad.material-dialogs:core:0.9.5.0") {
exclude group: 'com.android.support'
}
第三種叨粘,使用編譯器推薦的方法跳過相關(guān)代碼段猾编。
第四種,修改自己的版本或者修改第三方的支持庫版本升敲。這個(gè)比較麻煩答倡。
第五種,如果values錯(cuò)誤驴党,看一定位到相應(yīng)的行瘪撇,有可能是item格式錯(cuò)誤,androidstudio3.2之后校驗(yàn)比較嚴(yán),如果是引入的插件倔既,將插件下載下來恕曲,導(dǎo)入,修改錯(cuò)誤部分即可渤涌。
以上建議使用第一種佩谣。