More than one file was found with OS independent path 'META-INF/proguard/androidx-annotations.pro'

我是研究僧i 提交于 2019-12-02 17:24:21
TSB99X

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:

Known Issue

If you run into the following issue: "More than one file was found with OS independent path 'META-INF/proguard/androidx-annotations.pro'", please put the following in your gradle file as a temporary workaround while we fix the issue in alpha10:

 android {
     packagingOptions {
         exclude 'META-INF/proguard/androidx-annotations.pro'
     }
 }

So, in your case, android section should be like following:

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.

I got the same error when I added the following to my app's build.gradle dependencies section:

implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"

Following the Migration to AndroidX:

  1. In Android Studio, from the Refactor menu, select Migrate to AndroidX...
  2. better check the option to backup your project as a zip file in case the migration fails,
  3. and then after clicking Migrate you will get to choose the location to save the zip backup.

now I am able to build without problems so far.


My setup

Android Studio 3.2.1
JRE: 1.8.0_152-release-1136-b06 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains
macOS 10.13.6

Can use add in build.gradle(app) (answered by TheStrikeBone)

android {
    packagingOptions {
        exclude 'META-INF/proguard/androidx-annotations.pro'
    }
}

OR downgrade android.arch.work version into 1.0.0-alpha08

dependencies {
    implementation 'android.arch.work:work-runtime:1.0.0-alpha08'
}

Adding this to my apps build.gradle file solved my problem.

android {
  packagingOptions {
    exclude 'META-INF/proguard/androidx-annotations.pro'
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/notice.txt'
    exclude 'META-INF/ASL2.0'
  }
}
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!