android - 禁用 kotlin-android-extensions 弃用警告

标签 android kotlin gradle kotlin-android-extensions

我的项目正在迁移到 View Binding,但与此同时,在查看构建日志时,此警告会分散注意力

Warning: The 'kotlin-android-extensions' Gradle plugin is deprecated. Please use this migration guide (https://goo.gle/kotlin-android-extensions-deprecation) to start working with View Binding (https://developer.android.com/topic/libraries/view-binding) and the 'kotlin-parcelize' plugin.


我怎样才能禁用它?

最佳答案

我最近也遇到了这个问题并发现了。
在 Kotlin 1.4.20-M2 , JetBrains 弃用了 Kotlin Android Extensions 编译器插件以支持 View Binding,此外,Google 正在促进模块化,但合成属性不能跨模块工作。
所以要修复这个警告。删除 apply plugin: 'kotlin-android-extensions'在您的 build.gradle文件
注意:如果您使用 包裹 .
不要忘记 包裹功能 在 Kotlin 中是 kotlin-android-extensions 编译器插件的一部分,因此如果您的所有 Parcelable 类依赖于 Parcelize 注解,则删除该插件最终会使它们无法编译。
JetBrains extracted 从 Kotlin Android Extensions 到新插件的 Parcelize,kotlin-parcelize首先,您需要将 kotlin-parcelize 插件添加到您的项目中 build.gradle文件。

Plugins {
   ...
   id 'kotlin-parcelize'
}

然后将旧的导入语句从import kotlinx.android.parcel.Parcelizeimport kotlinx.parcelize.Parcelize有关更多信息,我建议您阅读此博客 Migrating the deprecated Kotlin Android Extensions compiler plugin

关于android - 禁用 kotlin-android-extensions 弃用警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65185166/

相关文章:

android - 我如何优化 android/kotlin 中的以下条件

android - 使用 android gradle experimental 链接到 .aar 文件中的 .so 文件

java - 当我调用 bufferedReader.readLine() 时,我的 Android 应用程序卡住了;

安卓获取当前位置

android - 将 Google map 添加为 LinearLayout 的子项

android - Android Studio开始下载Gradle

java - 来自 Java 的 Kotlin null

android - 如何等到在 kotlin 中完成查询?

android - 找不到 R.layout

gradle - 如何从 Gradle 中的 Findbugs 插件生成 XML 和 HTML 报告