当我试图运行模拟器时,我得到了这些错误。
在模块jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1)和生命周期中发现的重复类androidx.lifecycle.ViewModelLazy -视图模型-2.4.0-运行时(androidx.lifecycle:lifecycle-viewmodel:2.4.0) 在模块jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1)和生命周期中发现的重复类androidx.lifecycle.ViewModelProviderKt -视图模型-2.4.0-运行时(androidx.lifecycle:lifecycle-viewmodel:2.4.0) 在模块jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1)和生命周期中发现的重复类androidx.lifecycle.ViewTreeViewModelKt -视图模型-2.4.0-运行时(androidx.lifecycle:lifecycle-viewmodel:2.4.0)
注意:这并不是android仿真器所特有的,而是gradle构建的问题。
发布于 2021-11-03 22:11:12
最有可能的是,您的一个依赖项使用kotlin版本的viewmodel库,而您的代码使用java版本。
为所有依赖项指定两个以强制执行最新版本:
def lifecycle_version = "2.4.0"
implementation "androidx.lifecycle:lifecycle-viewmodel:$lifecycle_version"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"发布于 2021-11-11 04:44:58
我也遇到了同样的问题,我只添加了一行代码就解决了这个问题。
implementation 'androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.0'发布于 2021-12-14 12:22:39
我认为消除重复类比添加新类更好,所以我将在这里发布我的解决方案:
configurations {
all {
exclude group: 'androidx.lifecycle', module: 'lifecycle-viewmodel-ktx'
}
}这些代码行需要添加到项目级别的build.gradle文件中--构建错误将随着内存的浪费而消失(有点,但仍然如此)。
奇怪而难以理解的行为。我是在将Kotlin库添加到项目之后得到的,后来决定用Java版本替换它。如果您转到.gradle文件夹,您可以在那里找到它,但我不确定从那里删除它是否是个好主意,因为它可能在其他库中使用。奇怪的是,gradle或AndroidStudio不能自动解决这个问题,因为build.gradle文件中只指定了build.gradle的依赖项。
https://stackoverflow.com/questions/69817925
复制相似问题