android – 程序类型已存在:kotlinx.coroutines.experimental.EventLoopBase

前端之家收集整理的这篇文章主要介绍了android – 程序类型已存在:kotlinx.coroutines.experimental.EventLoopBase前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的kotlin安卓应用程序中收到以下错误

Android issues: (3 errors)

Program type already present: kotlinx.coroutines.experimental.EventLoopBase
Message{kind=ERROR,text=Program type already present: kotlinx.coroutines.experimental.EventLoopBase,sources=[Unknown source file],tool name=Optional.of(D8)}

Program type already present: kotlinx.coroutines.experimental.internal.LockFreeLinkedListNode
Message{kind=ERROR,text=Program type already present: kotlinx.coroutines.experimental.internal.LockFreeLinkedListNode,tool name=Optional.of(D8)}

Program type already present: kotlinx.coroutines.experimental.internal.LockFreeMPSCQueueCore
Message{kind=ERROR,text=Program type already present: kotlinx.coroutines.experimental.internal.LockFreeMPSCQueueCore,tool name=Optional.of(D8)}

Java compiler: (4 errors)

Caused by: com.android.builder.dexing.DexArchiveBuilderException: @R_301_159@ to process /home/deepak/.gradle/caches/modules-2/files-2.1/org.jetbrains.kotlinx/kotlinx-coroutines-core/0.25.0/5664ba2d20c6dcc88c912cc9666baa7f03203bcd/kotlinx-coroutines-core-0.25.0.jar

Caused by: com.android.builder.dexing.DexArchiveBuilderException: Error while dexing.

Caused by: com.android.tools.r8.Compilation@R_301_159@Exception: Compilation @R_301_159@ to complete

Caused by: com.android.tools.r8.utils.AbortException

下面是我的依赖和kotlin实验协同程序

dependencies {
implementation fileTree(dir: 'libs',include: ['*.jar'])
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.0.0-rc01'
implementation 'androidx.constraintlayout:constraintlayout:1.1.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'

implementation 'org.jetbrains.anko:anko:0.10.5'
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-core:0.25.0'
implementation 'com.android.support:design:28.0.0-rc01'
}

kotlin {
    experimental {
        coroutines "enable"
    }
}

解决方法

它是在kotlinx.coroutines 0.25.0中引入的 bug.

版本0.25.0以multi-release JAR的形式发货,这样的JAR打破了除最新的alpha版本之外的所有Android工具.此更改已在版本0.25.3中恢复,因此更新kotlinx.coroutines版本和使缓存无效就足以解决问题.

猜你在找的Android相关文章