解决编译时Androidx引用和第三方库中Support引用冲突
2022-09-20 本文已影响0人
古早味蛋糕
在Android Studio中新建项目使用Androidx库,如果此时使用的第三方库中包含旧版Support库,会导致冲突报错。
Your project has set `android.useAndroidX=true`, but configuration `debugRuntimeClasspath` still contains legacy support libraries, which may cause runtime issues.
This behavior will not be allowed in Android Gradle plugin 8.0.Please use only AndroidX dependencies or set `android.enableJetifier=true` in the `gradle.properties` file to migrate your project to AndroidX (see https://developer.android.com/jetpack/androidx/migrate for more info).
The following legacy support libraries are detected:
debugRuntimeClasspath -> com.alibaba:arouter-api:1.5.2 -> com.android.support:support-v4:28.0.0
debugRuntimeClasspath -> com.alibaba:arouter-api:1.5.2 -> com.android.support:support-v4:28.0.0 -> com.android.support:support-compat:28.0.0
解决办法为在project主目录下的gradle.properties中添加
android.useAndroidX=true
android.enableJetifier=true
Android官网关于这两个属性的介绍,可以参考https://developer.android.google.cn/jetpack/androidx
android.useAndroidX:该标志设置为 true 时,Android 插件会使用对应的 AndroidX 库,而非支持库。如果未指定,那么该标志默认为 false。
android.enableJetifier:该标志设置为 true 时,Android 插件会通过重写其二进制文件来自动迁移现有的第三方库,以使用 AndroidX 依赖项。如果未指定,那么该标志默认为 false。
————————————————
原文链接:https://blog.csdn.net/yqc603090635/article/details/123819737