重复条目:META-INF / myLibrary.kotlin_module

时间:2017-10-29 22:21:45

标签: android gradle kotlin

更新到Android 3.0后,收到Kotlin错误:

Execution failed for task ':myLibrary:transformClassesAndResourcesWithPrepareIntermediateJarsForDebug'.
> java.lang.RuntimeException: java.util.zip.ZipException: duplicate entry: META-INF/myLibrary.kotlin_module

这是我的库buid.gradle文件:

apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'

...

dependencies {
    api "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
}

这是我的项目build.gradle

ext.kotlin_version = '1.1.51'
repositories {
    jcenter()
    mavenCentral()
    google()
}
dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}

3 个答案:

答案 0 :(得分:3)

这太烦人了,但是运行清洁项目为我解决了这个问题。

答案 1 :(得分:0)

看起来像我的缓存错误(使用kotlin)。运行gradle cleangradle clear(不确定哪个是正确的拼写,抱歉,其中一个应该作为gradle任务存在)并且重建应该修复错误,因为缓存中的所有文件都将被删除任务并由项目构建重新生成。

答案 2 :(得分:0)

尝试将此添加到build.gradle中。在packagingOptions:

packagingOptions {
    ...
    exclude 'META-INF/rxkotlin.properties'
    exclude 'META-INF/rxkotlin_main.kotlin_module'
}