【发布时间】:2018-04-12 10:01:01
【问题描述】:
我从 kotlin 示例中获取了这个简单的代码 sn-p:
fun main(args: Array<String>) = runBlocking<Unit> {
withTimeout(1300L) {
repeat(1000) { i ->
println("I'm sleeping $i ...")
delay(500L)
}
}
}
当我尝试运行它时,它会抛出
java.lang.NoSuchMethodError: kotlinx.coroutines.experimental.ScheduledKt.withTimeout$default(JLjava/util/concurrent/TimeUnit;Lkotlin/jvm/functions/Function2;ILjava/lang/Object;)Ljava/lang/Object;
我使用 kotlinVersion = '1.1.51'
有什么建议吗?
【问题讨论】:
-
您是否使用一个版本的库进行编译,并使用另一个版本运行?
-
这是一个编译器错误。请将问题提交至kotl.in/issue
-
@RomanElizarov 不,显然这不是编译器错误萌芽 Idea 15.0.3 缺陷,当我使用 gradle test 测试代码时,它按预期失败并出现 TimeoutCancellationException i>,否则(在 IntelliJ 中)我得到 NSM 异常。