更新到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"
}
答案 0 :(得分:3)
这太烦人了,但是运行清洁项目为我解决了这个问题。
答案 1 :(得分:0)
看起来像我的缓存错误(使用kotlin)。运行gradle clean
或gradle clear
(不确定哪个是正确的拼写,抱歉,其中一个应该作为gradle任务存在)并且重建应该修复错误,因为缓存中的所有文件都将被删除任务并由项目构建重新生成。
答案 2 :(得分:0)
尝试将此添加到build.gradle中。在packagingOptions:
packagingOptions {
...
exclude 'META-INF/rxkotlin.properties'
exclude 'META-INF/rxkotlin_main.kotlin_module'
}