我正在尝试运行android WorkManager,代码运行时抛出错误“使用操作系统独立路径'META-INF / proguard / androidx-annotations.pro找到了多个文件”,我尝试了以下答案,但没有帮助。
WorkManager依赖关系
build.gradle(应用程序)
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
defaultConfig {
applicationId "rock.dmx.xaro.workmanagerexample"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
def work_version = "1.0.0-alpha09"
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation "android.arch.work:work-runtime:$work_version"
}
最佳答案
This is a known problem at the moment, Architecture Components Release Notes outline the issue and provides a solution to fix it until alpha10 version of work manager library:
已知问题
如果您遇到以下问题:“使用操作系统独立路径'META-INF / proguard / androidx-annotations.pro'找到了多个文件”,请在将Gradle文件中放入以下文件作为临时解决方法,同时修复alpha10中的问题:
android {
packagingOptions {
exclude 'META-INF/proguard/androidx-annotations.pro'
}
}
因此,在您的情况下,android部分应如下所示:
android {
compileSdkVersion 28
defaultConfig {
applicationId "rock.dmx.xaro.workmanagerexample"
minSdkVersion 19
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
// Temporary fix until alpha10
packagingOptions {
exclude 'META-INF/proguard/androidx-annotations.pro'
}
}
Issue should be addressed properly in 1.0.0-alpha10 version of WorkManager.