我使用 androidX 包中的 WorkManager 版本 2。
我还使用另一个使用 WorkManager v1 的库,它位于 Arch 组件 包中。
当我同步项目时,同步成功完成,但当我尝试构建项目时。我收到以下错误,提示您有重复值。
我在我的 Gradle 中使用的版本:
“androidx.work:work-runtime-ktx:2.0.1”
添加到库的版本:
'android.arch.work:work-runtime-ktx:1.0.1'
错误:
Duplicate class androidx.work.ArrayCreatingInputMerger found in modules classes.jar (android.arch.work:work-runtime:1.0.0-rc01) and classes.jar (androidx.work:work-runtime:2.0.1)
Duplicate class androidx.work.BackoffPolicy found in modules classes.jar (android.arch.work:work-runtime:1.0.0-rc01) and classes.jar (androidx.work:work-runtime:2.0.1)
Duplicate class androidx.work.Configuration found in modules classes.jar (android.arch.work:work-runtime:1.0.0-rc01) and classes.jar (androidx.work:work-runtime:2.0.1)
Duplicate class androidx.work.Configuration$Builder found in modules classes.jar (android.arch.work:work-runtime:1.0.0-rc01) and classes.jar (androidx.work:work-runtime:2.0.1)
...
我还将这些添加到我的 gradle.properties
:
android.useAndroidX=true
android.enableJetifier=true
最佳答案
如果您不想依赖第三方库,您可以简单地将其排除到该库之外。
在您的情况下,您可以排除 android.arch
工作管理器并添加您自己的 androidX
工作管理器。
类似于:
implementation('your_library') {
exclude group :'android.arch.work:work-runtime-ktx'
}
关于android - WorkManager v1 和 v2 冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56506746/