Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
&燃气轮机;com.android.build.api.transform.TransformException:java.util.zip.zipeException:重复条目:org/apache/commons/collections/ArrayStack.class_Java_Android_Gradle - Fatal编程技术网

&燃气轮机;com.android.build.api.transform.TransformException:java.util.zip.zipeException:重复条目:org/apache/commons/collections/ArrayStack.class

&燃气轮机;com.android.build.api.transform.TransformException:java.util.zip.zipeException:重复条目:org/apache/commons/collections/ArrayStack.class,java,android,gradle,Java,Android,Gradle,在android studio上运行android应用程序时,我遇到如下异常: com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: org/apache/commons/collections/ArrayStack.class 并找到位于项目外部库中的commons-beanutils-1.8.0.jar和commons-collections-3.2.

在android studio上运行android应用程序时,我遇到如下异常:

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: org/apache/commons/collections/ArrayStack.class
并找到位于项目外部库中的commons-beanutils-1.8.0.jarcommons-collections-3.2.1.jar,它们都包含相同的类(org/apache/commons/collections/ArrayStack.class)

我不知道为什么这里和我的build.gradle中包含这两个JAR,如下所示:

`apply plugin: java

sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8


tasks.withType(JavaCompile){
    options.encoding="UTF-8"
}

repositories {
    mavenCentral()
    jcenter()
    mavenLocal()
}

dependencies {

compile ('io.netty:netty-all:5.0.0.Alpha2')
compile ('org.springframework:spring-core:4.2.4.RELEASE')
compile ('org.springframework:spring-webmvc:4.2.4.RELEASE')
compile ('org.springframework:spring-jdbc:4.2.4.RELEASE')
compile ('org.springframework:spring-test:4.2.4.RELEASE')
compile ('org.springframework:spring-context:4.2.4.RELEASE')
compile ('org.springframework.data:spring-data-mongodb:1.8.2.RELEASE')
compile ('org.springframework.security:spring-security-core:4.0.3.RELEASE')
compile ('org.springframework.security:spring-security-web:4.0.3.RELEASE')
compile ('javax.servlet:javax.servlet-api:3.1.0')
compile ('org.mybatis:mybatis:3.3.0')
compile ('org.mybatis:mybatis-spring:1.2.3')
compile ('net.sf.json-lib:json-lib:2.4:jdk15')
compile ('c3p0:c3p0:0.9.1.2')
compile ('com.google.protobuf:protobuf-java:2.6.1')
compile ('mysql:mysql-connector-java:5.1.38')
compile ('org.mongodb:mongo-java-driver:3.2.0')
compile ('org.slf4j:slf4j-log4j12:1.7.2')
compile ('org.jasig.cas.client:cas-client-core:3.4.1')
compile ('commons-httpclient:commons-httpclient:3.1')
compile group: 'com.alibaba', name:'fastjson', version:'1.2.4'

testCompile ( 'junit:junit:4.12')
}`

如何解决此异常,以及为什么下载并位于外部库中的commons-beanutils-1.8.0.jarcommons-collection-3.2.1.jar?提前感谢您的帮助。

如果没有您的工作区,很难说哪个依赖项与commons-beanutils-1.8.0.jarcommons-collection-3.2.1.jar相关,问题在于
commons-beanutils-1.8.0.jar
已更新。描述详细信息

BeanUtils的1.7.x和1.8.x版本分发了三个罐子:

commons-beanutils.jar-包含所有内容 commons-beanutils-core.jar-排除Bean集合类 commons-beanutils-bean-collections.jar-仅bean集合类 main commons-beanutils.jar对commons集合有一个可选的依赖项

当您看到这种情况时,我建议您更新以使用commons-beanutils-1.9.0

查找使用commons beanutils和commons集合的库。您可以访问以搜索项目中使用的所有依赖项。e、 例如,您可以在详细描述下找到编译依赖项

希望这能帮助你


更新: 正如@EpicPandaForce所说,使用
gradledependencies
是更简单的方法。多亏了EpicPandaForce。 我只是运行了与问题相同的依赖项,得到了以下可以回答这个问题的答案

+--- net.sf.json-lib:json-lib:2.4
|    +--- commons-beanutils:commons-beanutils:1.8.0
|    |    \--- commons-logging:commons-logging:1.1.1 -> 1.2
|    +--- commons-collections:commons-collections:3.2.1
|    +--- commons-lang:commons-lang:2.5
|    +--- commons-logging:commons-logging:1.1.1 -> 1.2
|    \--- net.sf.ezmorph:ezmorph:1.0.6
|         \--- commons-lang:commons-lang:2.3 -> 2.5
net.sf.json lib
这就是这两个库的来源。

错误:

错误:任务“:app:transformClassesWithJarMergingForDebug”的执行失败。 com.android.build.api.transform.TransformException:java.util.zip.zipeException:重复条目:org/hamcrest/BaseDescription.class

渐变文件依赖项:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile files ('jackson-annotations-2.2.2.jar')
    compile files ('jackson-core-2.2.2.jar')
    compile files ('jackson-databind-2.2.2.jar')
    compile 'com.android.support:appcompat-v7:23.0.1'
    compile 'com.android.support:design:23.0.1'
    compile group: 'cz.msebera.android' , name: 'httpclient', version: '4.4.1.1'
    compile 'com.google.android.gms:play-services-maps:7.8.0'
    compile 'com.google.android.gms:play-services-location:7.8.0'
    compile 'com.github.orangegangsters:swipy:1.2.2@aar'
    compile('com.crashlytics.sdk.android:crashlytics:2.5.5@aar') {
        transitive = true;
    }
    compile('com.crashlytics.sdk.android:crashlytics-ndk:1.1.2@aar') {
        transitive = true;
    }
}

我认为使用
gradle-dependencies
gradle:dependencies
查找谁在使用commons集合是一个更好的解决方案。而不是手动在maven存储库中查看它。