Gradle重复项输入错误:META-INF/MANIFEST.MF(或如何从jar中删除文件) [英] Gradle duplicate entry error: META-INF/MANIFEST.MF (Or how to delete a file from jar)

查看:2315
本文介绍了Gradle重复项输入错误:META-INF/MANIFEST.MF(或如何从jar中删除文件)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经克隆了github存储库,因为我想研究代码,但是当我尝试在Android Studio中构建它时,遇到了一些麻烦. 添加google maven存储库(如Android Studio提示)并更新Gradle插件版本和成绩版本(分别为3.5.2和5.4.1)后,由于以下错误,构建失败:

I've cloned a github repository because I wanted to study the code, but when I tried to build it in Android Studio, I ran into some trouble. After adding the google maven repository (as prompted by Android Studio) and updating both the Gradle Plugin Version and the Grade Version (to 3.5.2 and to 5.4.1, respectively), the build fails because of the following error:

原因:重复输入:META-INF/MANIFEST.MF

Cause: duplicate entry: META-INF/MANIFEST.MF

更具体地说:

原因:java.util.zip.ZipException:重复项:META-INF/MANIFEST.MF

Caused by: java.util.zip.ZipException: duplicate entry: META-INF/MANIFEST.MF

这是我的项目级别的build.gradle文件:

Here is my project level build.gradle file:


    buildscript {
        repositories {
            jcenter()
            google()
        }

        dependencies {
            classpath 'com.android.tools.build:gradle:3.5.2'

            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }

    allprojects {
        repositories {
            jcenter()

            maven {
                url 'https://maven.google.com'
            }

        }
    }

这是我的模块build.gradle文件(尝试任何操作之前):

Here's my module build.gradle file (before trying anything):


    apply plugin: 'com.android.application'

    android {
        compileSdkVersion 22
        buildToolsVersion '28.0.3'

        defaultConfig {
            applicationId "com.thelittlenaruto.supportdesignexample"
            minSdkVersion 11
            targetSdkVersion 22
            versionCode 1
            versionName "1.0"
        }

        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            }
        }
    }

    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation ('com.android.support:appcompat-v7:22.2.1')
        implementation ('com.android.support:design:22.2.1')
        implementation 'com.github.frankiesardo:linearlistview:1.0.1@aar'
    }

这是我到目前为止尝试过的:

Here's what I've tried so far:

  • 将以下内容添加到我的模块build.gradle文件的android部分:

    sourceSets {
            main{
                java{
                    exclude '**/META-INF/MANIFEST'
                    exclude '**/META-INF/MANIFEST.MF'
                    exclude 'META-INF/MANIFEST'
                    exclude 'META-INF/MANIFEST.MF'
                    exclude '!META-INF/MANIFEST.MF'
                }
            }
        }

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆