在gradle:3.0.0发现多个文件与OS独立路径'META-INF/ASL2.0'

Ant*_*y K 12 android gradle android-studio build.gradle android-gradle-plugin

我已将我的Android工作室更新为3.0,然后他要求升级到 'com.android.tools.build:gradle:3.0.0'

一切顺利,直到我决定运行我的项目,它给了我这个错误

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
Run Code Online (Sandbox Code Playgroud)

在OS独立路径'META-INF/ASL2.0'中找到多个文件

我的应用程序gradle

   android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    useLibrary 'org.apache.http.legacy'
    defaultConfig {
        applicationId "com.test.demo"
        minSdkVersion 16
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}'
Run Code Online (Sandbox Code Playgroud)

我的图书馆是gradle

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.2"
    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        compileOptions {
            sourceCompatibility JavaVersion.VERSION_1_6
            targetCompatibility JavaVersion.VERSION_1_6
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    packagingOptions {
        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'
    }
}
Run Code Online (Sandbox Code Playgroud)

DeK*_*szn 25

您应该添加到应用程序build.gradlepackagingOptions:

packagingOptions {
    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'
}
Run Code Online (Sandbox Code Playgroud)


Aye*_*ngs 6

在尝试其他方法之前,请先尝试此方法。

第一的:

检查您是否在build.gradle->dependencies 中设置了这个

implementation fileTree(include: ['*.jar'], dir: 'libs')
Run Code Online (Sandbox Code Playgroud)

如果你在 build.gradle 文件中设置了这个,那么如果你试图从你的 libs 目录导入库,也请检查这个:

implementation files('libs/...')
Run Code Online (Sandbox Code Playgroud)

如果您的 build.gradle 文件中也有这个,请将其删除或将其注释掉,因为您正在尝试再次重新导入库,结果是该错误。


Erc*_*can 5

只需添加以下代码即可解决问题

packagingOptions {
    pickFirst  'META-INF/*'
}
Run Code Online (Sandbox Code Playgroud)