问题记录--更新ButterKnife版本到 10.1.0,项目中没有替换成 androidx 库
Manifest merger failed : Attribute application@appComponentFactory value=(android.support.v4.app.CoreComponentFactory) from [com.android.support:support-compat:28.0.0] AndroidManifest.xml:22:18-91
is also present at [androidx.core:core:1.0.0] AndroidManifest.xml:22:18-86 value=(androidx.core.app.CoreComponentFactory).
Suggestion: add 'tools:replace="android:appComponentFactory"' to <application> element at AndroidManifest.xml:12:5-61:19 to override.
从字面上看:清单文件合并失败,而且推荐在<Application> 标签下加上 tools:replace="android:appComponentFactory",按照提示修改之后
<application
...
tools:replace="android:appComponentFactory"
...>
运行依然报错如下:(log很长这里不再粘贴)
Manifest merger failed with multiple errors, see logs
有些博客说可以再加一句
<application
...
android:appComponentFactory=""
tools:replace="android:appComponentFactory"
...>
运行之后依然报错
More than one file was found with OS independent path 'META-INF/androidx.core_core.version'
最后,笔者把黄油刀版本还原回去了
我认为解决这个问题需要把support库替换成androidx才可以完美解决。但是很多框架,还没有兼容androidx,暂记于此,有机会再调试。
--------------------------------------------分割线------------------------------------------
将support替换成androidx之后就不在出现上述问题了,说明我的猜测是正确的